phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?AW=3A_=5Bphp=5D_Re=3A_=5Bphp=5D_AW=3A_=5Bphp=5D?= =?iso-8859-1?Q?_Schleife_unterschl=E4gt_Datensatztz?= =?iso-8859-1?Q?_Schleife_unterschl=E4gt_Datensatztz?=

[php] =?iso-8859-1?Q?AW=3A_=5Bphp=5D_Re=3A_=5Bphp=5D_AW=3A_=5Bphp=5D?= =?iso-8859-1?Q?_Schleife_unterschl=E4gt_Datensatztz?= =?iso-8859-1?Q?_Schleife_unterschl=E4gt_Datensatztz?=

Gloss Mathias Mathias.Gloss_(at)_start.de
Thu, 23 Nov 2000 19:04:30 +0100


Hallo Theo,

> ----------
> Von: 	Hans Theo Mislisch[SMTP:info_(at)_agathos.net]
> 
> > Hast du davor nach dem mysql_query schon mal mysql_fetch_row()
> > oder mysql_fetch_array aufgerufen ? Dann ist naemlich der erste
> > Datensatz schon weg...
> 
> Ja, das wars. Ich habe umgebaut und zuerst diese Abfrage mit
> Schleife laufen lassen, jetzt gehts.
> 
> Wieso verschluckt das erste mysql_fetch_row($result) einen Datensatz?
> (diese Wissenslücke hat mich wohl 2 Std. gekostet)
> 
Ein Query mit select ...  stellt die Ergebnismenge bereit.
Jedes mysql_fetch...() holt einen der Sätze der Ergebnismenge ab und setzt
einen
internen Zeiger auf den nächsten Satz der Ergebnismenge, egal ob das
einmalig 
oder in einer Schleife passiert.

Das ist genau das gleiche wenn du mit each aus einem Array Elemente holst,
irgend-
wann steht der Zeiger am letzten Element und du bekommst nichts mehr. bei
Arrays
musst du dann mit reset($array) den Zeiger wieder nach vorne positionieren.

Bei MySQL kannst du den internen Zeiger mit mysql_data_seek auf einen
bestimmten 
Datensatz der Ergebnismenge positionieren. Falls du mal sowas brauchst.
Meist brauch
mans net ;-)

Viele Grüße, Mathias




php::bar PHP Wiki   -   Listenarchive