Query gibt unsinnigen Wert aus!
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
auftrag
ausgabe
bauauftrag
bauwerk
beitrag
daten
endstufe
fehler
freund
funktion
gel
listen
nochmal
objekt
set
spalten
springbrunnen
stufen
update
variable
-
?dit:
Lima wird zu lanngsam..mann, mann, mann.. :P
Problem hat sich nach mehrst?ndiger Suche nach einem Fehler erledigt. Der Query war falsch. Ein Freund amchte mich dann darauf aufmerksam im PHP-MyAdmin den Query druchzuprobieren, bis er klappt.. und: Tadaaaaa: Es klappte irgendwann (Nach mehreren verscuhen und mehreren ehlgeschlagenenen Scriptumschreibungen..T_T)
Trotzdem danke!
Hi!
Nochmals ein Problem:
Ich habe eine Tabelle (int, 255) mit dme momentanen Wert = 1. Allerdings funktoniert meine Abfrage nicht! Es komtm einmal Array, und zweimal springbrunne (also der name der spalte) heraus. o.O
Hier der gesamte Code:
####################################################### #Is_built() stellt fest ob ein Objekt gebaut wurde! # ####################################################### function is_built($dorfid) { if(isset($dorfid)) { ######### #START # ######### #echo "Fehler: Das Script wird momentan bearbeitet. Momentan kann das Script nicht genutzt werden!<br><br>"; #return 0; #Ben?tigten Daten aus der Datenbank holen # $daten1 = mysql_query("SELECT * FROM is_build WHERE dorfid = '$dorfid'") OR die("Daten1: Query kann nicht ausgef?hrt werden!<br><br>" . mysql_error()); $daten = mysql_fetch_array($daten1) OR die("Daten: Query kann nicht in einen Array umgeformt werden!<br><br>" . mysql_error()); # #Wenn der Daten if($daten['ende'] != "") { #Alle Daten verf?gbar. Abfragen der Zeit... # $gerade = time(); if($daten['ende'] <= $gerade) { #ZEILE 150 # #Der Bau ist fertig gestellt! Entfernen des Bauauftrags... # #Bauauftrag sollte gel?scht sein; Updaten der Stufe! $to_build1 = mysql_query("SELECT rname FROM build WHERE id = '" . $daten['bauid'] . "'") OR die("Fehler: Kann den Namen nicht der Bauid zuordnen! - " . mysql_error()); $to_build2 = mysql_fetch_object($to_build1); if($to_build2 != "") { $to_build = $to_build2->rname; } else { die("Die Variable '#to_build2' ist leer! Script wird abgebrochen!"); } $stufe1 = mysql_query("SELECT '$to_build' FROM doerfer WHERE id = '$dorfid'") OR die("Fehler: Kann die Stufe des Bauwerks nicht initialisieren! - " . mysql_error()); while($stufe2 = mysql_fetch_array($stufe1)) { if($stufe2 != "") { echo $stufe2 . "-" . $stufe2['0'] . "-" . $stufe2['springbrunnen'] . "<br><br>"; $stufe = $stufe2[0]; } Else { die("Die Variable '#stufe2' ist leer! Der Query kann nicht ausgef?hrt werden! Script wird abgebrochen! <br><br>"); } } if($to_build != "") { # #echo $to_build; if($stufe != "") { # #echo $stufe; if(is_int($stufe)) { $endstufe = $stufe; $endstufe++; } else { die("Die Endstufe ist keine Zahl. Script wird abgebrochen!<br><br>"); } $auftrag = mysql_query("DELETE FROM is_build WHERE dorfid = '$dorfid'") OR die("Kann Bauauftrag nicht aus der Liste l?schen! Script wird abgebrochen! - " . mysql_error() . "<br><br>"); $update = mysql_query("UPDATE doerfer Set '$to_build' = '" . $endstufe . "' WHERE id = '$dorfid'") OR die("Kann die Stufe des Bauwerks nicht erh?hen! Das Script wird abgebrochen. - " . mysql_error()); } Else { die("'stufe' ist leer! Querys k?nnen nicht ausgef?hrt werden. Script wird abgebrochen.<br><br"); } } Else { die("'To_build' ist leer! Querys k?nnen nicht ausgef?hrt werden. Script wird abgebrochen.<br><br"); } } Else { return 0; $dauer = $daten['ende'] - $gerade; echo "Der Bau ist noch nicht fertig!<br> Sie m?ssen noch " . $dauer . "Sekudnen warten!<br><br>"; } #} #Else #{ #echo "Der Query ist leer....ENDE!"; #} } Else { die("Fehler: Der Query wurde nicht Ordnungsgem?? in einen Array umgewandelt. Das Script wird abgebrochen!<br><br>"); } ######### #ENDE # ######### } Else { echo "FATAL_ERROR:Die Variable 'dorfid' wurde nicht gesetzt!"; } #Ende der Funktion } ?>
Druch das testen hat sich erllerlei komsiches eingeschlichen usw. Also nicht wunedern. :P
Hier der relevanet code:
$stufe1 = mysql_query("SELECT '$to_build' FROM doerfer WHERE id = '$dorfid'") OR die("Fehler: Kann die Stufe des Bauwerks nicht initialisieren! - " . mysql_error()); while($stufe2 = mysql_fetch_array($stufe1)) { if($stufe2 != "") { echo $stufe2 . "-" . $stufe2['0'] . "-" . $stufe2['springbrunnen'] . "<br><br>"; $stufe = $stufe2[0]; } Else { die("Die Variable '#stufe2' ist leer! Der Query kann nicht ausgef?hrt werden! Script wird abgebrochen! <br><br>"); } }
Als ausgabe kommt:
Array-springbrunnen-springbrunnen
Die Endstufe ist keine Zahl. Script wird abgebrochen!
Danke im Voraus!
Ich bin am verzweifeln.. >-<
Beitrag ge?ndert am 28.03.2006 18:08 von warlord -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage