Hver gang du kalder mysql_fetch_array
den trækker den næste række fra din forespørgsel. Det while
loop bliver ved med at returnere sand, mens mysql_fetch_array
har stadig noget tilbage at tildele variablen $row2
. Når den først er ude af rækker, har den intet tilbage at give variablen, og false returneres.
ETA: Med hensyn til den sidste bit, du nævnte, kan du have en variabel stigning i hver iteration af løkken som i dit eksempel, men det er ikke helt nødvendigt. Du kan også bare se, hvor mange rækker der er blevet returneret ved at gøre noget som $var = mysql_num_rows($data)
før din while
loop.