이것은 처음으로 JOIN 절이 었으며 문제가 발생했습니다. 내 항목에 필요한 모든 정보를 반향시키고 싶지만 한 항목에 대해 모든 태그를 반향하는 방법을 이해하지 못하고 있습니다. 지금은 중복 된 항목이 있지만 다른 태그로 두 개 이상의 태그가 지정된 경우 목록이 생성됩니다. 목. 어떤 아이디어? 이렇게하는 더 좋은 방법은 크게 감사합니다.SQL JOIN 항목 이름과 모든 태그를 가져옵니다.
$query = "SELECT categories.id, categories.category, spots.spot_name, spots.category_id, spots.description, spots.slug, districts.id, districts.district, tags.spot_id, tags.tag ".
"FROM categories, spots, districts, tags ".
"WHERE categories.id = spots.category_id AND districts.id = spots.district_id AND tags.spot_id = spots.id";
$result = mysql_query($query);
if (!$result) {
die('Invalid query: ' . mysql_error());
}
while ($row = @mysql_fetch_array($result)){
echo '<tr><td style="background:#000; color:#ccc;" class="tooltip" title="'.$row["description"].'Tags: '.$row["tag"].'"><a style="color:#fff;" href="/'.$row["slug"].'">'.$row["spot_name"].'</a></td>
<td>'.$row["category"].'</td>
<td>'.$row["district"].'</td>
<td>****</td>
</tr>
';
}
감사합니다 만,
앤더스
안녕하세요, 빠른 답장을 보내 주셔서 감사합니다. 그러나 저에게 정확한 결과가 나옵니다. 내 코드. 한 항목에 대해 모든 태그를 에코 할 수 있고 내 테이블에 중복 된 항목 (스팟)이없는 방법에 대한 제안은 무엇입니까? –
오! 죄송합니다! 그래 네가 맞아. 간단한 해결책이 있습니다. PHP에서 동일한 id의 레코드를 병합 할 수 있습니다 : D –