Veröffentlicht 14. März 200124 j Moin Moin!! Habe mit einer einfachen SELECT Abfrage volgendes Problem. In einem Textfeld soll der User seinen Namen eingeben, gibt er nichts ein und klickt auf "OK" kommt die Meldung: "Bitte geben Sie Ihren Benuternamen ein!!". Gibt der User seinen richtigen Benutzernamen ein funktioniert alles super, gibt er jedoch irgend etwas ein, einen Buchstaben oder etwas anderes was nicht in der Datenbank steht, erhalte ich immer folgende Fehlermeldung: "Warning: Unable to jump to row 0 on MySQL result index 2 in /Pfadangabe/Scriptname.php on line 15!" Durch die Ausgabe dieser Fehlermeldung schieben sich alle meine Textfelder nach unten, was logischerweise nicht besonders schön anzusehen ist, dazu kommt noch die häßliche Fehlermeldung!! Wie kann ich das umgehen, wenn der User in das Textfeld etwas eingibt was nicht in der Datenbank steht, daß eine Meldung kommt, z.B.: "Benutzername falsch!!"??? und ich von der Fehlermeldung verschont bleibe??????? Ich habe mal meine Abfrage mit angegeben, vielleicht kann mir von euch einer sagen was an der Abfrage falsch ist!!!!!! Meine line 15 ist folgende: $frage = mysql_result($res, 0, "frage"); LEUTE, BIN FÜR JEDEN TIP DANKBAR!!! if($senden) { $sqlad = "select frage from eingabe where "; $sqlad .= "benutzer = '$benutzer'"; $res = mysql_db_query("Datenbankname", $sqlad); $frage = mysql_result($res, 0, "frage"); if($frage == "") { $ausgabe = "Bitte geben Sie Ihren Benutzernamen ein!!"; } } bye BlueScreen
14. März 200124 j Naja, ich würd mal sagen du darfst nicht nur abfragen ob er nichts eingegeben hat, sondern auch ob es diesen benutzernamen gibt. wenn nicht gibste halt ne meldung aus wie z.b "ungültiger benutzername" !! ok cu
14. März 200124 j Naja, ich würd mal sagen du darfst nicht nur abfragen ob er nichts eingegeben hat, sondern auch ob es diesen benutzernamen gibt. wenn nicht gibste halt ne meldung aus wie z.b "ungültiger benutzername" !! ok cu[/b Das ist mir schon klar, mein Problem ist das mir folgende Fehlermeldung NICHT mehr ausgegeben wird: "Warning: Unable to jump to row 0 on MySQL result index 2 in /Pfadangabe/Scriptname.php on line 15!" Wie kann ich das vermeiden wo ist mein Fehler??? Wenn der User einen falschen Namen eingibt bekommt er auch eine Meldung: "FALSCHER BENUTZERNAME!!". Gleichzeitig erhalte ich aber auch die nervenden Fehlermeldung und die MUSS WEG!!!! Ok Shiloh grüß mir die Heimat Ciao BlueScreen
20. März 200124 j Ich würde an deiner Stelle leere AbfrageResultate abfangen ... am besten dein Skript so um schreiben: if($senden) { $sqlad = "select frage from eingabe where "; $sqlad .= "benutzer = '$benutzer'"; $res = mysql_db_query("Datenbankname", $sqlad); if ($res) { $frage = mysql_result($res, 0, "frage"); } if($frage == "") { $ausgabe = "Bitte geben Sie Ihren Benutzernamen ein!!"; } }
20. März 200124 j hmm, normal wenn MySQL so ne warning ausgibt stimmt aber was mit dem query nicht... ich hab mir jetzt nich alle postings genau angeschaut - sorry normal mach ich das so: $res = mysql_query("select * from blah where name='$eingabe'"); if (mysql_num_rows($res)>0) { $user_daten = mysql_fetch_array($res); ... ausgabe.. blah... } else { echo 'fehler..'; ...oder so... } ------------------ NetQuarter e.V. - The LAN Specialists www.netquarter-online.de
20. März 200124 j <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">Zitat:</font><HR>Original erstellt von BlueScreen: if($senden) { $sqlad = "select frage from eingabe where "; $sqlad .= "benutzer = '$benutzer'"; $res = mysql_db_query("Datenbankname", $sqlad); $frage = mysql_result($res, 0, "frage"); if($frage == "") { $ausgabe = "Bitte geben Sie Ihren Benutzernamen ein!!"; } }
20. März 200124 j hi. ich tippe mal darauf, dass der fehler hier liegt: <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">Zitat:</font><HR>Original erstellt von BlueScreen: ... $frage = mysql_result($res, 0, "frage"); ...
7. Juni 200124 j am die Fehlerausgabe zu unterdrücken, einfach ein @ vor den MySql-Befehl schreiben... z.B. $frage = @mysql_result($res, 0, "frage"); das müßte helfen... MfG Hertsch
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.