Wichtige frage bzwl. querys

hi all,
bei mir hat grad puretec angerufen, hab wohl zuviele queries, aber die summer erschine mir mit 3 mio queries astronomisch, zumal beim aufruf der seite ich nicht warten muss, „falsche“ schleifen würden ja mind. einige sekunden in ans´pruch nehmen, aber eine sache ist mir dann doch aufgefallen, auf EINER seite verwende ich ZWEI sql queries…beides mal ist die syntax

while ($row = mysql_fetch_array($result))

also beides mal verwende ich die variable $row, sollte, und insgesamt mach ich nur EIN (im head) db connect…könnte es sein das ich auf zur sicherheit zwei unterschiedliche variablen verwenden sollte? wohl nicht oder? sonst müsste ich ja auch zwei db connects machen…oder die variable zumindest weiterreichen…

danke für hilfe, die schliessen mir gleich meinen server
meth

3 millionen queries sind schon wat feines … du scheinst wohl in ner endlosschleife immer wieder dbanfragen zumachen … feine sache :wink:

super, hab alles angesehen, keine endlos while-schleife entdeckt…ich such nochmal…aber da ist wirklich nix…

sag mal zählt ein mysql_fetch_array auch als db-abfrage? es zählen doch NUR folgende funktion als DB-Query oder???

select * from $sTable where…

nur diese bereiche machen doch eine db-abfrage? oder irre ich mich??? denn fetch_arrays gibt es doch einige bei mir…aber die holen sich doch nur die einmalig zurückgelieferten variablen…

was meint ihr???

danke :smile:

wenn du aber in einer schleife oder rekursiv den einen query immerwieder wiederholst hast kommst du irgendwie bestimmt auf deine 3 millionen :wink:

Hi Meth,

bei mir hat grad puretec angerufen, hab wohl zuviele queries,
aber die summer erschine mir mit 3 mio queries astronomisch,
zumal beim aufruf der seite ich nicht warten muss, „falsche“
schleifen würden ja mind. einige sekunden in ans´pruch nehmen,
aber eine sache ist mir dann doch aufgefallen, auf EINER seite
verwende ich ZWEI sql queries…beides mal ist die syntax

Böse Falle, wenn das auf einem Fehler in Deinen Scripts beruht. Ansonsten ist es wohl der Nutzung Deiner/Eurer Seiten zu verdanken.

while ($row = mysql_fetch_array($result))

also beides mal verwende ich die variable $row, sollte, und
insgesamt mach ich nur EIN (im head) db connect…könnte es
sein das ich auf zur sicherheit zwei unterschiedliche
variablen verwenden sollte? wohl nicht oder? sonst müsste ich
ja auch zwei db connects machen…oder die variable zumindest
weiterreichen…

Wenn Du zwei oder mehrere Abfragen startest und jedesmal $row verwendest, wird einfach nur der Inhalt des mit $row übergebenen Arrays überschrieben. Wenn Du die $row durchnummerierst, kannst Du Werte aus vorangegangenen Abfrage weiter unten in Deinem Script verwenden. Das sollte aber bestimmt nicht die Begründung für Deine Last sein.

Übrigens ist mysql_fetch_array keine DB-Abfrage, sondern lediglich der Befehl um die in $query gespeicherten Ergebnisse auszuelsen und in ein Array zu schreiben, welche PHP dann weiterverarbeiten kann.

danke für hilfe, die schliessen mir gleich meinen server
meth

Ich hoffe, Deine Seite lebt noch !

Bis denn dann,

Felix