Fehler bei register Script...
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anlegen
anweisung
ausgabe
benutzer
benutzername
brauchen
code
dank
fehler
fehlermeldung
hausnummer
helfen
http
ort
server
stimmen
syntax
tabelle
teddy
url
-
Ich find einfach nicht den Fehler :( Soweit sieht alles ganz okay aus, es wird auch angezeigt und bla, aber der Benutzer wird nicht angelegt, bekomme jedesmal Fehlermeldung..
Ich schätze der Fehler ist irgendwo in dem Bereich, aber ich weiß es net genau, wer kann helfen?
}else{ $username = $_POST['username']; $pass = md5($_POST['password']); $name = $_POST['name']; $alter = $_POST['alter']; $plz = $_POST['plz']; $ort = $_POST['ort']; $str = $_POST['str']; $hausnummer = $_POST['hausnummer']; $query = "INSERT INTO users(user,pass,name,alter,plz,ort,str,hausnummer) VALUES('".mysql_real_escape_string($username)."', '".mysql_real_escape_string($pass)."', '".mysql_real_escape_string($name)."', '".mysql_real_escape_string($alter)."', '".mysql_real_escape_string($plz)."', '".mysql_real_escape_string($ort)."', '".mysql_real_escape_string($str)."', '".mysql_real_escape_string($hausnummer)."')"; if(mysql_query($query)){ echo '<p align="center">Der neue Benutzer wurde erfolgreich angelegt!<br /><br /><a href="sichere_seite.php">Zur Admin- Seite</a></p>'; }else{ echo '<p align="center"> Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!<br /><br /><a href="neu.php">Zurück</a></p>'; } } } ?>
Das ist das komplette Script:
<body> <?php if(!isset($_POST['submit'])) { ?> <form action="<?php $PHP_SELF ?>" method="post"> <table width="280" bgcolor="#000000" border="0" cellpadding="5" cellspacing="1" align="center"> <tr> <td bgcolor="#e7e7e7" align="center" colspan="2"> <b>Jetzt kostenlos Registrieren!</b> </td> </tr> <tr> <td width="170" bgcolor="#e7e7e7">Benutzername</td> <td width="230" bgcolor="#ffffff"><input type="text" name="username" class="input" <?php if($_POST['username'] != "") { echo ' value="'.$_POST['username'].'"'; } ?> size="20"></td> </tr> <tr> <td width="170" bgcolor="#e7e7e7">Passwort</td> <td width="230" bgcolor="#ffffff"> <input type="password" name="password" size="20" class="input"></td> </tr> <tr> <td width="170" bgcolor="#e7e7e7">Passwort wiederholen</td> <td width="230" bgcolor="#ffffff"> <input type="password" name="password2" size="20" class="input"></td> </tr> <tr> <td width="170" bgcolor="#e7e7e7">* Name</td> <td width="230" bgcolor="#ffffff"> <input type="name" name="name" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">Alter</td> <td width="230" bgcolor="#ffffff"> <input type="alter" name="alter" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">Postleitzahl</td> <td width="230" bgcolor="#ffffff"> <input type="plz" name="plz" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">Ort</td> <td width="230" bgcolor="#ffffff"> <input type="ort" name="ort" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">Straße</td> <td width="230" bgcolor="#ffffff"> <input type="str" name="str" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">* Hausnummer</td> <td width="230" bgcolor="#ffffff"> <input type="hausnummer" name="hausnummer" size="20" class="input"></td> </tr> <tr> <td bgcolor="#e7e7e7" align="center" colspan="2"> <input type="submit" name="submit" value="kostenlos registrieren" class="button"> </td> </tr> <tr> <td bgcolor="#e7e7e7" align="center" colspan="2"> <a href="index.php">Zurück zur Startseite</a> </td> </tr> </table> </form> <?php }elseif(!isset($_POST['username']) || $_POST['username'] == ""){ echo '<p align="center"> Einen Benutzernamen brauchen wir schon ;-) <br /><br /><a href="neu.php">Zurück</a></p>'; }elseif(!isset($_POST['password']) || $_POST['password'] == "") { echo '<p align="center"> Ein Passwort brauchen wir schon ;-)<br /><br /><a href="neu.php">Zurück</a></p>'; }elseif($_POST['password'] != $_POST['password2']) { echo '<form action="neu.php" method="post">'; echo '<p align="center">Die Passwörter stimmen nicht überein!<br /><br />'; echo '<input type="hidden" name="username" value="'.$_POST['username'].'">'; echo '<input type="submit" name="zurueck" value="Zurück"></p>'; echo '</form>'; }else{ $query = @mysql_query("SELECT user FROM users WHERE user = '".mysql_real_escape_string($_POST['username'])."'"); $result = @mysql_fetch_array($query); if($_POST['username'] == $result['user']) { echo '<p align="center">Sorry, dieser Benutzername ist leider schon vergeben!<br /><br /><a href="neu.php">Zurück</a></p>'; die; }else{ $username = $_POST['username']; $pass = md5($_POST['password']); $name = $_POST['name']; $alter = $_POST['alter']; $plz = $_POST['plz']; $ort = $_POST['ort']; $str = $_POST['str']; $hausnummer = $_POST['hausnummer']; $query = "INSERT INTO users(user,pass,name,alter,plz,ort,str,hausnummer) VALUES('".mysql_real_escape_string($username)."', '".mysql_real_escape_string($pass)."', '".mysql_real_escape_string($name)."', '".mysql_real_escape_string($alter)."', '".mysql_real_escape_string($plz)."', '".mysql_real_escape_string($ort)."', '".mysql_real_escape_string($str)."', '".mysql_real_escape_string($hausnummer)."')"; if(mysql_query($query)){ echo '<p align="center">Der neue Benutzer wurde erfolgreich angelegt!<br /><br /><a href="sichere_seite.php">Zur Admin- Seite</a></p>'; }else{ echo '<p align="center"> Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!<br /><br /><a href="neu.php">Zurück</a></p>'; } } } ?> </body> </html>
Und hier ist meine Mysql Tabelle
http://www.kill-a-teddy.lima-city.de/Pictures/mysql_tabelle.png
Beitrag zuletzt geändert: 12.6.2011 13:20:42 von kill-a-teddy -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Es wird sich kaum einer die Mühe machen deinen "Code" durchzuarbeiten, aber du meintest ja du bekommst eine Fehlermeldung, dann poste diese doch einfach mal hier. Weil ob du es glaubst oder nicht, eine Fehlermeldung gibt Aufschluss über die Fehlerursachen
//edit: meintest du eine richtige Fehlermeldung oder die die von deinem Skript ausgegeben wird???
//edit 2: Lass dir mal noch Mysql-Fehler anzeigen, am besten so oder so ähnlich:
echo mysql_errno() . ": " . mysql_error() . "\n";
Beitrag zuletzt geändert: 12.6.2011 13:04:28 von alfr3d -
alfr3d schrieb:
Es wird sich kaum einer die Mühe machen deinen "Code" durchzuarbeiten, aber du meintest ja du bekommst eine Fehlermeldung, dann poste diese doch einfach mal hier. Weil ob du es glaubst oder nicht, eine Fehlermeldung gibt Aufschluss über die Fehlerursachen
//edit: meintest du eine richtige Fehlermeldung oder die die von deinem Skript ausgegeben wird???
Die, die von meinem Script ausgelesen wird ^^ Sonst hätt ich hier gepostet..
Najaa ist ja auch i.wie zu viel erwartet, dass sich da jemand durcharbeitet.. Trotzdem danke! -
Lass dir mal noch Mysql-Fehler anzeigen, am besten so oder so ähnlich:
echo mysql_errno() . ": " . mysql_error() . "\n";
Beitrag zuletzt geändert: 12.6.2011 13:05:39 von alfr3d -
alfr3d schrieb:
Lass dir mal noch Mysql-Fehler anzeigen, am besten so oder so ähnlich:
echo mysql_errno() . ": " . mysql_error() . "\n";
Entweder hab ich das falsch eingefügt oder es kommt keine Fehlermeldung...
Mann ich hab heut einfach kein Kopf für sowas <.< Bin in Gedanken grad bei meiner Freundinn, die is schwanger :D
<?php echo mysql_errno() . ": " . mysql_error() . "\n"; ?>
-
Poste bitte das komplette Script, wenn dir einer helfen soll. Zudem wäre auch die Fehlermeldung hilfreich.
Beitrag zuletzt geändert: 12.6.2011 13:11:41 von fabo -
fabo schrieb:
Poste bitte das komplette Script, wenn dir einer helfen soll. Zudem wäre auch die Fehlermeldung hilfreich.
Hab ich schon :P Da steht
Das ist das komplette Script: usw. usw. ^^ Der 2. Code im 1. Beitrag (:
Fehlermeldung ->
Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!
Zurück
Hab ja nur die aus meinem Script
Hier nochmal der ganze Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Neuen Benutzer anlegen</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <?php echo mysql_errno() . ": " . mysql_error() . "\n"; ?> <?php if(!isset($_POST['submit'])) { ?> <form action="<?php $PHP_SELF ?>" method="post"> <table width="280" bgcolor="#000000" border="0" cellpadding="5" cellspacing="1" align="center"> <tr> <td bgcolor="#e7e7e7" align="center" colspan="2"> <b>Jetzt kostenlos Registrieren!</b> </td> </tr> <tr> <td width="170" bgcolor="#e7e7e7">Benutzername</td> <td width="230" bgcolor="#ffffff"><input type="text" name="username" class="input" <?php if($_POST['username'] != "") { echo ' value="'.$_POST['username'].'"'; } ?> size="20"></td> </tr> <tr> <td width="170" bgcolor="#e7e7e7">Passwort</td> <td width="230" bgcolor="#ffffff"> <input type="password" name="password" size="20" class="input"></td> </tr> <tr> <td width="170" bgcolor="#e7e7e7">Passwort wiederholen</td> <td width="230" bgcolor="#ffffff"> <input type="password" name="password2" size="20" class="input"></td> </tr> <tr> <td width="170" bgcolor="#e7e7e7">* Name</td> <td width="230" bgcolor="#ffffff"> <input type="name" name="name" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">Alter</td> <td width="230" bgcolor="#ffffff"> <input type="alter" name="alter" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">Postleitzahl</td> <td width="230" bgcolor="#ffffff"> <input type="plz" name="plz" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">Ort</td> <td width="230" bgcolor="#ffffff"> <input type="ort" name="ort" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">Straße</td> <td width="230" bgcolor="#ffffff"> <input type="str" name="str" size="20" class="input"></td> </tr> <td width="170" bgcolor="#e7e7e7">* Hausnummer</td> <td width="230" bgcolor="#ffffff"> <input type="hausnummer" name="hausnummer" size="20" class="input"></td> </tr> <tr> <td bgcolor="#e7e7e7" align="center" colspan="2"> <input type="submit" name="submit" value="kostenlos registrieren" class="button"> </td> </tr> <tr> <td bgcolor="#e7e7e7" align="center" colspan="2"> <a href="index.php">Zurück zur Startseite</a> </td> </tr> </table> </form> <?php }elseif(!isset($_POST['username']) || $_POST['username'] == ""){ echo '<p align="center"> Einen Benutzernamen brauchen wir schon ;-) <br /><br /><a href="neu.php">Zurück</a></p>'; }elseif(!isset($_POST['password']) || $_POST['password'] == "") { echo '<p align="center"> Ein Passwort brauchen wir schon ;-)<br /><br /><a href="neu.php">Zurück</a></p>'; }elseif($_POST['password'] != $_POST['password2']) { echo '<form action="neu.php" method="post">'; echo '<p align="center">Die Passwörter stimmen nicht überein!<br /><br />'; echo '<input type="hidden" name="username" value="'.$_POST['username'].'">'; echo '<input type="submit" name="zurueck" value="Zurück"></p>'; echo '</form>'; }else{ $query = @mysql_query("SELECT user FROM users WHERE user = '".mysql_real_escape_string($_POST['username'])."'"); $result = @mysql_fetch_array($query); if($_POST['username'] == $result['user']) { echo '<p align="center">Sorry, dieser Benutzername ist leider schon vergeben!<br /><br /><a href="neu.php">Zurück</a></p>'; die; }else{ $username = $_POST['username']; $pass = md5($_POST['password']); $name = $_POST['name']; $alter = $_POST['alter']; $plz = $_POST['plz']; $ort = $_POST['ort']; $str = $_POST['str']; $hausnummer = $_POST['hausnummer']; $query = "INSERT INTO users(user,pass,name,alter,plz,ort,str,hausnummer) VALUES ( '".mysql_real_escape_string($username)."', '".mysql_real_escape_string($pass)."', '".mysql_real_escape_string($name)."', '".mysql_real_escape_string($alter)."', '".mysql_real_escape_string($plz)."', '".mysql_real_escape_string($ort)."', '".mysql_real_escape_string($str)."', '".mysql_real_escape_string($hausnummer)."' )"; if(mysql_query($query)){ echo '<p align="center">Der neue Benutzer wurde erfolgreich angelegt!<br /><br /><a href="sichere_seite.php">Zur Admin- Seite</a></p>'; }else{ echo '<p align="center"> Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!<br /><br /><a href="neu.php">Zurück</a></p>'; } } } ?> </body> </html>
Beitrag zuletzt geändert: 12.6.2011 13:15:33 von kill-a-teddy -
Der erste, von dir gepostete Code ist nicht im 2. Code enthalten, was darauf schließen lässt, dass du das Script nicht komplett gepostet hast.
-
fabo schrieb:
Der erste, von dir gepostete Code ist nicht im 2. Code enthalten, was darauf schließen lässt, dass du das Script nicht komplett gepostet hast.
Doch ist nur fast ganz unten ;)
Vergleiche mal diese Zeilen
$username = $_POST['username']; $pass = md5($_POST['password']); $name = $_POST['name']; $alter = $_POST['alter']; $plz = $_POST['plz']; $ort = $_POST['ort']; $str = $_POST['str'];
//edit
mysql-Tabelle:
http://www.kill-a-teddy.lima-city.de/Pictures/mysql_tabelle.png
Beitrag zuletzt geändert: 12.6.2011 13:21:27 von kill-a-teddy -
Grad gesehen :)
$username = mysql_real_escape_string($_POST['username']); $pass = md5($_POST['password']); $name = mysql_real_escape_string($_POST['name']); $alter = mysql_real_escape_string($_POST['alter']); $plz = mysql_real_escape_string($_POST['plz']); $ort = mysql_real_escape_string($_POST['ort']); $str = mysql_real_escape_string($_POST['str']); $hausnummer = mysql_real_escape_string($_POST['hausnummer']); mysql_query("INSERT INTO users(user,pass,name,alter,plz,ort,str,hausnummer) VALUES('".$username."', '".$pass."', '".$name."', '".$alter."', '".$plz."', '".$ort."', '".$str."', '".$hausnummer."')") or die (mysql_error()); echo '<p align="center">Der neue Benutzer wurde erfolgreich angelegt!<br /><br /><a href="sichere_seite.php">Zur Admin-Seite</a></p>';
Versuchs so. -
fabo schrieb:
Grad gesehen :)
$username = mysql_real_escape_string($_POST['username']); $pass = md5($_POST['password']); $name = mysql_real_escape_string($_POST['name']); $alter = mysql_real_escape_string($_POST['alter']); $plz = mysql_real_escape_string($_POST['plz']); $ort = mysql_real_escape_string($_POST['ort']); $str = mysql_real_escape_string($_POST['str']); $hausnummer = mysql_real_escape_string($_POST['hausnummer']); mysql_query("INSERT INTO users(user,pass,name,alter,plz,ort,str,hausnummer) VALUES('".$username."', '".$pass."', '".$name."', '".$alter."', '".$plz."', '".$ort."', '".$str."', '".$hausnummer."')") or die (mysql_error()); echo '<p align="center">Der neue Benutzer wurde erfolgreich angelegt!<br /><br /><a href="sichere_seite.php">Zur Admin-Seite</a></p>';
Versuchs so.
HTTP-Fehler 500 (Internal Server Error): Beim Versuch des Servers, die Anforderung zu verarbeiten, ist eine unerwartete Bedingung aufgetreten.
Trotzdem danke für deine Mühe! (: -
Öffne mit einem Texteditor ein leeres Dokument füge diesen Inhalt ein:
php_value display_errors 1
und speichere das Dokument unter dem Namen: .htaccess
Dann lade die Datei auf deinen Webspace, dann sollten dir in Zukunft detailierte PHP-Fehlermeldungen angezeigt werden...
Beitrag zuletzt geändert: 12.6.2011 13:41:43 von alfr3d -
alfr3d schrieb:
//edit: der Beitrag hier kann gelöscht werden
: Access denied for user 'kill-a-teddy'@'212.83.45.154' (using password: NO)
Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!
Zurück
Beitrag zuletzt geändert: 12.6.2011 13:45:19 von kill-a-teddy -
Mit der .htaccess von allfr3d bekommst du an Stelle des 500er Fehlers eine PHP-Fehlermeldung.
-
fabo schrieb:
Mit der .htaccess von allfr3d bekommst du an Stelle des 500er Fehlers eine PHP-Fehlermeldung.
Jop aber damit kann ich net viel anfangen...
: Access denied for user 'kill-a-teddy'@'212.83.45.154' (using password: NO)
Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!
Zurück
Die Datei hat die Rechte 777 und die mysql-login-daten sind korrekt.. Versteh ich net... -
fabo
Ich aber ;)
Die MySQL-Daten stimmen nicht. Hat der MySQL-Benutzer "kill-a-teddy" auf dem (extern erreichbaren!!!) MySQL-Server "212.83.45.154" kein Passwort?
//edit:
Okay.. Da war schon mal der erste total dumme Fehler... Ich hab die config.inc.php nicht verlinkt, also konnte der ja gar net zur Mysql verbinden xD Nun habe ich das nachgeholt und bekomme folgendes:
0: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alter,plz,ort,str,hausnummer) VALUES ( 'Testperson', '06d655f3f1b3146fe36620' at line 1
Beitrag zuletzt geändert: 12.6.2011 13:52:18 von kill-a-teddy -
Keine Ahnung ob es was ausmacht, aber setzt mal nach den Kommas immer ein Leerzeichen:
(user, pass, name, alter, plz, ort, str, hausnummer)
//edit:
Du hast die Spalte "id" vergessen:
(id, user, pass, name, alter, plz, ort, str, hausnummer) VALUES ('', '$user', '$pass'...)
Beitrag zuletzt geändert: 12.6.2011 13:58:07 von alfr3d -
alfr3d schrieb:
Keine Ahnung ob es was ausmacht, aber setzt mal nach den Kommas immer ein Leerzeichen:
(user, pass, name, alter, plz, ort, str, hausnummer)
//edit:
Du hast die Spalte "id" vergessen:
(id, user,pass,name,alter,plz,ort,str,hausnummer) VALUES ('', '$user', '$pass'...)
Immernoch das selbe
0: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alter,plz,ort,str,hausnummer) VALUES ( 'Testperson', '06d655f3f1b3146fe36620' at line 1 -
Mach mal bitte
die("INSERT INTO users(user,pass,name,alter,plz,ort,str,hausnummer) VALUES('".$username."', '".$pass."', '".$name."', '".$alter."', '".$plz."', '".$ort."', '".$str."', '".$hausnummer."')");
vor der MySQL-Anweisung und poste die Ausgabe. Poste dazu auch mal bitte die MySQL-Tabelle "users".
Beitrag zuletzt geändert: 12.6.2011 13:57:54 von fabo -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage