Slayer8 Geschrieben 6. März 2003 Teilen Geschrieben 6. März 2003 Langsam verzweifel ich an einem PHP-Problem... Ich mußte meinen Rechner komplett neu installieren, da die Bootpartiton von den Daten und Programmen getrennt ist, funktionierte Apache, MySQL und PHP nicht mehr. Also installierte ich nochmals die gleiche Version, die ich vorher hatte neu. Nun bekomme ich auf meinem Rechner u.a. folgende Ausgabe: // Verbindung mit der Datenbank wird hergestellt $db = mysql_connect("localhost","AR"); mysql_select_db("usr1",$db); Warning: Supplied argument is not a valid MySQL-Link resource in j:\dynamische webseiten\apache\htdocs\kunden\login.php on line 38 Warning: Supplied argument is not a valid MySQL result resource in j:\dynamische webseiten\apache\htdocs\kunden\login.php on line 39 Willkommen in unserem Kundenbereich Es werden mir also alle Kommentare ausgegeben, außerdem scheint es Probleme mit folgenden Zeiltn (38 & 39) zu geben: $result = mysql_query($sql,$db); $daten = mysql_fetch_array($result); Was stimmt damit nicht, was mache ich falsch? Vor der Installation klappte es ja auch genauso, außerdem laufen die Sachen auf dem Onlineserver 1a und ohne jegliche Probleme oder Fehlermeldungen... Was könnte es noch sein? :-( Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DanielH Geschrieben 7. März 2003 Teilen Geschrieben 7. März 2003 Originally posted by Slayer8 mysql_connect("localhost","AR"); Ohne spitzfindig zu sein: steht das wirklich so im Script ? Müssen das nicht 3 Parameter sein ? Ansosnten probier mal über's DOS-Fenster mit mysql zu arbeiten, ob der Server überhaupt richtig läuft. MfG Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Slayer8 Geschrieben 7. März 2003 Autor Teilen Geschrieben 7. März 2003 Nein, den Benutzernamen und Paßwort haben ich gelöscht, die dritte Angabe darf allerdings fehlen denn die ist für das Paßwort. Sollte der SQL Server kein Paßwort benötigen, darf das Feld (meines Wissens nach) frei bleiben. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DanielH Geschrieben 7. März 2003 Teilen Geschrieben 7. März 2003 Die Warnung in Zeile 38 bezieht sich auf die Variable $db, da steht keine Verbindungsid drin. Zeile 39 ist das fehlgeschlagene query-resultat. irgendwas geht da mit der Verbindungskennung $db schief. Die Verbindung scheint nicht hergestellt zu werden weil sie ja mit ausgegeben wird :confused: , oder gibt es noch mehr Fehlermeldungen ? Poste mal ein bisschen mehr Code, vor allem den vor den Kommentaren, die mit ausgegeben werden. MfG Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Slayer8 Geschrieben 7. März 2003 Autor Teilen Geschrieben 7. März 2003 Hier die inkludierte Connect.inc: <? // Verbindung mit der Datenbank wird hergestellt $db = mysql_connect("localhost","Benutzer","Passwort"); mysql_select_db("Datenbankname",$db); ?> Hier der komplette Code: <? // Überprüfung if ($submit) { // *** Fehlerprüfung, hier werden Leereingaben abgefangen *** if (empty ($UserEntered)){ $err_msg = " Bitte geben Sie Ihren Benutzernamen ein."; } elseif (empty ($PassEntered)){ $err_msg = " Bitte geben Sie Ihr Passwort ein."; } // *** Fehlerüberprüfung, ist ein Fehler aufgetreten ? *** // Wenn ein Fehler aufgetreten ist, wird die Fehlermeldung ausgegeben und // das Login-Formular inkludiert. if (isset ($err_msg)){ ?><br> <table><tr><td><b><? echo $err_msg; ?></b> </td></tr></table> <? include'loginform.inc'; } else { // Verbindung mit der Datenbank wird hergestellt $db = mysql_connect("localhost","Benutzer","Passwort"); mysql_select_db("Datenbankname",$db); // Eingegebene Daten werden zur Kleinschreibung konvertiert; $PassEntered = strtolower ($PassEntered); // Benutzer und Paßwort werden in der Datenbank überprüft $sql = "SELECT * FROM User WHERE UserID='$UserEntered'"; $result = mysql_query($sql,$db); $daten = mysql_fetch_array($result); // Ist der Benutzer vorhanden if ($PassEntered==($daten["UserPassword"])){ $UserID=$daten["UserID"]; // Anzahl der Logins werden mitgezählt $sql = "UPDATE User SET Logins=Logins+1 WHERE UserID=$UserID"; mysql_query($sql); // Cookie wird gesetzt und eine neue Seite aufgerufen setcookie("sessionlogin", "$UserID", "()+900);"); header("Location: main.php"); } // Ist der Benutzer nicht vorhanden, wird eine Fehlermeldung ausgegeben else{?> <center><table><tr><td><b>Der Benutzer existiert nicht, oder falsches Paßwort</b></td></tr></table></center> <?include'loginform.inc'; } } } else { include'loginform.inc'; } ?> Wie gesagt, online läuft alles 1a und ohne Probleme! Ich würde ja auch auf ein Problem mit der installierten DB tippen, was aber nicht erklären würde, warum die Kommentare ausgegeben werden. Das deutet ja wieder auf einen PHP Fehler, jedoch werden die Befehle korrekt ausgeführt. Zudem ist der Rechner neu aufgesetzt und alles neu installiert worden... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DanielH Geschrieben 7. März 2003 Teilen Geschrieben 7. März 2003 sehr sehr eigenartig... Hab grad mal ein wenig rumprobiert damit, aber die Kommentare gibt er bei mir nicht aus, selbst wenn die short_open_tags deaktiviert sind. Zieh dir mal ein PHP-Package von PHP.net und entpack das in das PHP-Verzeichnis vom WAMP. Wer weiss was die da einstellen :confused: Gibt auch nirgendwo in der PHP-Bugliste eine derartige Fehlermeldung, das Kommentare mit ausgegeben werden... MfG Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.