Seite 1 von 1
MySQL - kein Eintrag in die DB
Verfasst: 02.01.2007 15:16
von nils754
Ich hab eben folgendes Script geschrieben. Nur leider wird nichts in die DB eingetragen. Kann mir da jemand weiterhelfen? Ich steh auf der Leitung...
Code: Alles auswählen
//MySQL Verbindung herstellen
@mysql_connect($host, $dbuser, $dbpasswort) or die('<center><font color="#FF0000">Registrierung gescheitert! Keine Verbindung zur Datenbank möglich</font>');
@mysql_select_db($datenbank) or die('<center><font color="#FF0000">Registrierung gescheitert! Keine Verbindung zur Datenbank möglich</font>');
$sql = "INSERT INTO vsb_users (id, username, pw, email, member, regdate, rights, signatur, notes)
VALUES ('', '$username', '$pw', '$email', '1', '$datum', '3', '$signatur', '')";
$verbindung = @mysql_connect($host, $dbuser, $dbpasswort);
mysql_query($sql, $verbindung);
mysql_close();
Verfasst: 02.01.2007 15:23
von Olli Oberhausen
zum glück ist bei dir register_globals auf off.
Daher mußt du $username mit $HTTP_POST_VARS['username']; bestimmen.
gleichzeitig solltest du dich jedoch mit der Gefahr von sql-injections beschäftigen.
usw...
Gruß, olli
Verfasst: 02.01.2007 18:01
von nils754
Hmm das funktioniert leider nicht. Es gibt weiterhin keinen Eintrag in die DB.
Ich poste mal das komplette php-Script
Code: Alles auswählen
$username = $HTTP_POST_VARS['username'];
$email = $HTTP_POST_VARS['email'];
$pw = $HTTP_POST_VARS['pw'];
$pw_verif = $HTTP_POST_VARS['pw_verif'];
$signatur = $HTTP_POST_VARS['signatur'];
$datum = date('j.n.Y');
//////// Anfang der Uberprufungsschleife
// Falls alle Felder leer sind nichts ausgeben
if (isset($username) && isset($email) && isset($pw) && isset($pw_verif) && isset($signatur)) {
// Falls alle felder gesetzt sind
if (!empty($username) && !empty($email) && !empty($pw) && !empty($pw_verif) && !empty($signatur)) {
// Falls die Pw's gleich sind
if ($pw == $pw_verif) {
//MySQL Verbindung herstellen
@mysql_connect($host, $dbuser, $dbpasswort) or die('<center><font color="#FF0000">Registrierung gescheitert! Keine Verbindung zur Datenbank möglich</font>');
@mysql_select_db($datenbank) or die('<center><font color="#FF0000">Registrierung gescheitert! Keine Verbindung zur Datenbank möglich</font>');
$sql = "INSERT INTO vsb_users (id, username, pw, email, member, regdate, rights, signatur, notes)
VALUES ('', '$username', '$pw', '$email', '1', '$datum', '3', '$signatur', '')";
$verbindung = @mysql_connect($host, $dbuser, $dbpasswort);
mysql_query($sql, $verbindung);
mysql_close();
}
else {
echo '<center><font color="#FF0000">Die Passwörter stimmen nicht überein!</font></center><br>';
}
}
else {
echo '<center><font color="#FF0000">Bitte füllen sie alle Felder aus!</font></center><br>';
}
}
else {
echo '<br>';
}
Bitte nicht an der Umsetzung meckern. Das Script funktioniert (bis auf den Eintrag in die MySQL DB) und das ist mir im Moment das Wichtigste.
Verfasst: 02.01.2007 18:51
von fanrpg
schon mal mysql_error() versucht?
Verfasst: 03.01.2007 23:33
von nils754
fanrpg hat geschrieben:schon mal mysql_error() versucht?
Auch damit komm ich leider nicht weiter. Ich habe das Script nochmal ein wenig verändert. Wenn es auch so nicht funktioniert, werde ich mich hier morgen nochmal melden.
Aber schon mal danke für die Hilfe bis jetzt!
Verfasst: 04.01.2007 10:23
von Jensemann
Das kann nicht funktionieren, guck dir mal deinen blödsinn mit mysql_connect an ...
Verfasst: 04.01.2007 10:57
von StarWolf3000
so sollte es richtig lauten:
Code: Alles auswählen
$username = $HTTP_POST_VARS['username'];
$email = $HTTP_POST_VARS['email'];
$pw = $HTTP_POST_VARS['pw'];
$pw_verif = $HTTP_POST_VARS['pw_verif'];
$signatur = $HTTP_POST_VARS['signatur'];
$datum = date('j.n.Y');
//////// Anfang der Uberprufungsschleife
// Falls alle Felder leer sind nichts ausgeben
if (isset($username) && isset($email) && isset($pw) && isset($pw_verif) && isset($signatur)) {
// Falls alle felder gesetzt sind
if (!empty($username) && !empty($email) && !empty($pw) && !empty($pw_verif) && !empty($signatur)) {
// Falls die Pw's gleich sind
if ($pw == $pw_verif) {
//MySQL Verbindung herstellen
$verbindung = @mysql_connect($host, $dbuser, $dbpasswort) or die('<center><font color="#FF0000">Registrierung gescheitert! Keine Verbindung zur Datenbank möglich</font>');
@mysql_select_db($datenbank) or die('<center><font color="#FF0000">Registrierung gescheitert! Keine Verbindung zur Datenbank möglich</font>');
$sql = "INSERT INTO vsb_users (id, username, pw, email, member, regdate, rights, signatur, notes)
VALUES ('', '$username', '$pw', '$email', '1', '$datum', '3', '$signatur', '')";
mysql_query($sql, $verbindung);
mysql_close();
}
else {
echo '<center><font color="#FF0000">Die Passwörter stimmen nicht überein!</font></center><br>';
}
}
else {
echo '<center><font color="#FF0000">Bitte füllen sie alle Felder aus!</font></center><br>';
}
}
else {
echo '<br>';
}