Ponieważ dodałem obrazy z innego stołu, daje mi to duplikaty i nie mam pojęcia dlaczego. Wprowadziłem DISTINCT, ale bez żadnego wyniku.
Tutaj możesz zobaczyć tabelę "fotos". Wyniki mojego kodu byłyby dwa razy "Internnummer 1" i trzy razy "Internnummer 2".
Internnummer | VolgNR | Fotonaam
1 | 0 | Image_1.jpg
1 | 1 | Image_2.jpg
2 | 0 | Image_3.jpg
2 | 1 | Image_4.jpg
2 | 2 | Image_5.jpg
W kodzie, który już sprawiłam, działało, że będą wyświetlane tylko obrazy z "VolgNr" 0. Ale nadal duplikuje resztę danych.
Wszystko działa dobrze, gdy tylko używam tego, z wyjątkiem obrazu oczywiście.
sql = "WYBIERZ WYRÓŻNIENIE * OD okazji INNER JOIN fotos ON occasions.Internnummer = fotos.Internnummer";
Pełny kod:
<?php
$sql = "SELECT DISTINCT * FROM occasions INNER JOIN fotos ON occasions.Internnummer = fotos.Internnummer";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo
"<div class="oc-item">" .
// Product image
"<div class="oc-image">" .
"<img src="/images/http://example.com/images/" . ($row["VolgNr"] == 0 ? $row["Fotonaam"] : $row["OmschrijvingNL"]) . ""/>" .
"</div>".
// Product information
"<div class="oc-info"><b>" .
"<a href="occasion?id=".$row["Internnummer"]."" >". $row["OmschrijvingNL"]. "</a>" .
"</b>".
"<p>" . ($row["Prijs"] == 0 ? "Prijs op aanvraag" : $row["Prijs"]) . "</p><br />" .
"<p>" .
$row["Memotekst1NL"]. "</p>" . "<p>" .
$row["Memotekst2NL"]. "</p>" . "<p>" .
$row["Memotekst3NL"]. "</p>" . "<p>" .
$row["Memotekst4NL"]. "</p>" . "<p>" .
$row["Memotekst5NL"]. "</p>" . "<p>" .
"<a href="occasion?id=".$row["Internnummer"]."" >"."Lees meer..."."</a>" .
"</div>" .
"</div>";
}
} else {
echo "Geen resultaten gevonden.";
}
?>
Odpowiedzi:
0 dla odpowiedzi № 1Problem był łatwy do rozwiązania. Dodałem WHERE i duplikaty zniknęły.
SELECT * FROM fotos INNER JOIN occasions ON occasions.Internnummer = fotos.Internnummer WHERE VolgNr = 0