php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.11.2005, 17:35  
Erfahrener Benutzer
 
Registriert seit: 07.11.2003
Beiträge: 526
Promaetheus
Standard query r�cksetzen?

ich steh grad voll auf der leitung und weiss auch nicht wie ich nach dem befehl suchen soll.

habe eine db query
$query = mysql_query("SELECT.......");

while($data = mysql_fetch_array($query) {...

sp�ter brauch ich so eine abfrage derselben query nochmal, m�chte mir aber die neuerliche query sparen. hatte da mal einen befehl mit dem ich die $query r�cksetzen konnte. denn wenn ich so einfach eine abfrage mache kommt gar nix.
mit reset() mal nicht denn es ist ja noch kein array. wie dann? oder muss ich eine neue abfrage machen?
__________________
mfg Alexander Haim
Promaetheus ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.11.2005, 17:42  
Gast
 
Beiträge: n/a
Standard

Meinst du: http://de2.php.net/manual/de/functio...-data-seek.php

Gru
phpfan
 
Alt 30.11.2005, 17:42  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Sehe im Manual jetzt nichts dazu, speicher das Ergebnis doch in einem Array?
Zergling-new ist offline  
Alt 30.11.2005, 17:50  
Erfahrener Benutzer
 
Registriert seit: 07.11.2003
Beiträge: 526
Promaetheus
Standard

also ich seh im manual jetzt auch nichts dazu.

@zergling: war ein guter tipp. hab das jetzt so gelöst:

$query = mysql_query( bla bla )

$data = mysql_fetch_array($data) // in array speichern

while($data) { // 1. schleife
bla bla
}

reset($data) // $data rücksetzen

while($data) { // 2. schleife

so sollte es funktionieren denke ich.
__________________
mfg Alexander Haim
Promaetheus ist offline  
Alt 30.11.2005, 17:52  
Erfahrener Benutzer
 
Registriert seit: 02.03.2005
Beiträge: 305
DerDesian
Standard

Schau mal bei Prepared Statements nach.
Hab ich für genau den Zweck schon mal verwendet.

Nachteil: erst am mySQL 5.0
Ansonsten enpfehle ich Postgres, die kann das schon seit ewigkeiten
(Insider: is nur nirgens dokumentiert *g*)

Gruß
Der Desian
__________________
Wenn dich was ankotzt, machs besser.
DerDesian ist offline  
Alt 30.11.2005, 18:10  
Erfahrener Benutzer
 
Registriert seit: 13.11.2005
Beiträge: 2.583
xabbuh
Standard

Zitat:
Zitat von Zergling
speicher das Ergebnis doch in einem Array?
Dabei muss man allerdings aufpassen, da das Abfrageergebnis bei großen Ergebnismengen schnell mal den Wert von allowed_memory_size überschreitet.
xabbuh ist offline  
Alt 30.11.2005, 18:20  
Erfahrener Benutzer
 
Registriert seit: 07.11.2003
Beiträge: 526
Promaetheus
Standard

also mein oben genannter lösungsvorschlag haut nicht hin. warum bleibt die $query nicht bestehen? die ändert doch nichts in dem script oder?

PHP-Code:
<?php
$query 
mysql_query("SELECT spalte FROM tabelle");
while(
$data mysql_fetch_array($query)) {
  echo 
$data['spalte'].'
'
;
}

// spätermal:

while($data mysql_fetch_array($query)) {
  echo 
$data['spalte'].'
'
;                            // nix wird ausgegeben
}
?>
aber wenn ich mir $query ausgeben lasse hat das immer den wert #idirgendwas

steh jetzt echt auf der leitung. muss ich die query immer wieder neu machen?
__________________
mfg Alexander Haim
Promaetheus ist offline  
Alt 30.11.2005, 18:22  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

PHP-Code:
<?php
$res 
mysql_query(..);
$dataList = array();
while (
$data mysql_fetch_assoc($res)) {
  
$dataList[] = $data;
  
print_r($data);
}
$dataList_count count($dataList);
for (
$i 0$i $dataList_count$i++) {
  
print_r($dataList[$i]);
}
?>
Zergling-new ist offline  
Alt 30.11.2005, 18:46  
Gast
 
Beiträge: n/a
Standard

Ich verstehe immer noch nicht, was gegen Meinst du: http://de2.php.net/manual/de/functio...-data-seek.php spricht.

Gruß
phpfan
 
Alt 01.12.2005, 08:02  
Erfahrener Benutzer
 
Registriert seit: 07.11.2003
Beiträge: 526
Promaetheus
Standard

@phpfan: stimmt. du meinst so oder?
PHP-Code:
<?php
$query
=mysql_query(....);

// 1. schleife
while($data=mysql_fetch_array($query)) {
  echo 
$data[].'
'
;
}

mysql_data_seek($query'0');    // setzen des zeigers zurück zum 1. datensatz

// 2. schleife
while($data=mysql_fetch_array($query)) {
  echo 
$data[].'
'
;
}
?>
hab ich das richtig verstanden?
__________________
mfg Alexander Haim
Promaetheus ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Query abbrechen nicon_26 Datenbanken 1 13.02.2008 11:34
NS Query Problem GSJLink Datenbanken 0 07.09.2007 18:04
Variablen in Query automatisch escapen Maho88 PHP Tipps 2007 10 31.07.2007 08:42
PHP/MySQL: Query wird nicht ausgeführt Zergling-new Tutorials 5 09.05.2006 23:16
Query mit zwei Joins Datenbanken 1 16.01.2006 15:53
query *confused* Datenbanken 4 14.01.2006 12:51
[Erledigt] count(..) in derselben Query noch &quot;abfragen&quot; Datenbanken 4 04.01.2006 17:33
Mehr als ein Feld mit Distinct in einem Query auslesen ?? Bouni PHP-Fortgeschrittene 9 19.12.2005 12:43
Query, was aus einer Tabelle mehrere Summen rausholt Datenbanken 3 14.09.2005 16:45
Geht das mit nur einem Query? Bouni Datenbanken 3 14.09.2005 09:08
mysql query fehler Datenbanken 6 19.01.2005 23:44
select query durch if anweisungen splitten Datenbanken 6 06.09.2004 13:46
immer mysql_select_db vor query wenn man pconnect benutzt robo47 PHP Tipps 2004 8 03.09.2004 14:56
mysql Fehler - query was empty Anuschka Datenbanken 2 01.09.2004 00:28
[Erledigt] Query läuft nicht Datenbanken 6 13.08.2004 21:13


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:50 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.