Wie Result einer DB-Abfrage nochmals auswerten (2x fetch_array)
gutergeist
- php
Hallo,
habe eine Datenbankabfrage geschrieben, die mir ein Resultat $result liefert:
$result=mysql_db_query($dbname,$sqlstring);
while($zeile=mysql_fetch_array($result))
{
mach was
}
Wie kann ich im Anschluss daran, die result-Variable nochmals verwerten ohne eine zweite Abfrage durchführen zu müssen?
Also es sieht jetzt ungefähr so aus:
$result=mysql_db_query($dbname,$sqlstring);
while($zeile=mysql_fetch_array($result))
{
mach was mit dem result
}
while($zeile=mysql_fetch_array($result))
{
mach noch was anderes mit dem result
}
Irgendwie scheint $result beim zweiten Durchlauf leer zu sein oder der Zeiger am Ende oder was auch immer, jedenfalls läuft die zweite Schleife nicht durch.
Wie kann ich das ändern ?
Irgendwie scheint $result beim zweiten Durchlauf leer zu sein oder der Zeiger am Ende oder was auch immer, jedenfalls läuft die zweite Schleife nicht durch.
Ja, der Zeiger ist am Ende.
Vorschlag: speichere beim ersten Durchlauf die Daten in einem Array. Dies kannst Du dann beliebig oft auselesen.
Vorschlag: speichere beim ersten Durchlauf die Daten in einem Array. Dies kannst Du dann beliebig oft auselesen.
Hallo,
genau das geht leider nicht, da der Speicherplatzbedarf für das Array zu hoch ist, es sind über 5000 Datensätze, da macht Schlund nicht mit (max. 10 MB Laufzeit-Speicher pro Script).
Moin!
Wie kann ich im Anschluss daran, die result-Variable nochmals verwerten ohne eine zweite Abfrage durchführen zu müssen?
http://de3.php.net/manual/de/function.mysql-data-seek.php
- Sven Rautenberg
http://de3.php.net/manual/de/function.mysql-data-seek.php
- Sven Rautenberg
Danke Sven, war genau das was ich suchte, funktioniert jetzt prima.