Morphius: tev saku - vai tu zini, ko nozīmē mysql_fetch_assoc funkcija? Tb ko tā dara?
Pateikšu priekšā (bet manuālī arī to vari izlasīt) - tā izvelk vienu rindu no selekta rezultātiem un atgriež no funkcijas.
Tavs pirmais kods bija:
Taču otrs kods bija:
$.. = mysql_fetch..(); // izvelkam pirmo rindu
do
{
// apstrādājam rindu, vispimrs pirmo, tad otro, tad trešo, utt
}
while($.. = mysql_fetch..()); // izvelkam otro, trešo rindu un ciklējamies, kamēr ir rindas
Taču otrais kods:
mysql_fetch_..(); // izvelkam vienu rindu
while ($.. = mysql_fetch...()) // izvelka otro, trešo, utt rindu
{
// apstrādājam vispirms otro rindu, tad trešo, utt
}
Vai pats neredzi, ka otrs kods nemaz neapstrādā pirmo izvilkto rindu?
Par atšķirību starp while ($a = b()) un while (b()) - pirmajā gadījumā funkcijas b() rezultāts piešķiras mainīgajam $a, otrajā nē.