Uczę się kodu PHP i próbuję zrobić własny projekt. Tak dla własnej satysfakcji. W bazie jest kilka rekordów i chciałbym te dane włożyć do kilku różnych zmiennych. Dwa różne kody dają dwa różne efekty i nie potrafię zrozumieć dlaczego. Dość powiedzieć, że ten kod sprawia, że wszystkie rekordy z tej kolumny wyświetlają się poprawnie.
<?php
$row_no = $result->num_rows;
if ($row_no>0)
{
$result->fetch_assoc();
foreach ($result as $result_row):
echo "<span>".$result_row['DropName']."</span>";
endforeach;
$result->free();
} else {
echo "<p>Tabela jest pusta</p>";
}
?>
Natomiast ten powoduje, że do zmiennych wkładany jest ostatni rekord z bazy, co powoduje, że wyświetlenie wszystkich trzech zmiennych daje taki sam, ostatni, trzeci rekord.
<?php
$row_no = $result->num_rows;
if ($row_no>0)
{
$result->fetch_assoc();
foreach ($result as $result_row):
$DropName1=$result_row['DropName'];
$DropName2=$result_row['DropName'];
$DropName3=$result_row['DropName'];
endforeach;
$result->free();
echo "<p>".$DropName1."</p>";
echo "<p>".$DropName2."</p>";
echo "<p>".$DropName3."</p>";
} else {
echo "<p>Tabela jest pusta</p>";
}
?>
Podpowie ktoś jak zedytować kod, żeby uzyskać poprawnie włożone dane do zmiennych? Dodam, że rekordów zawsze jest równe 3.