Tom: Daten in datenbankschreiben

Beitrag lesen

Hello,

//*****************************************************************
// die von der Eingabemaske übergebenen Werte werden nun in PHP konforme Variablen gepackt
$accname = $_POST['accname'];
$email = $_POST['email'];
$passwd = $_POST['passwd'];
$addon = $_POST['addon'];
//*****************************************************************

$_POST ist eine PHP-Variable, oder was meinst Du, woher die kommt?
Die Elemente dieses Array können ganz normal benutzt werden, wie jede andere Variable auch. Das umkopieren in ungebundene Variablen, bei denen man nachher ncht mehr weiß, welcher Bezeichner schon bentutzt wurde oder wozu die gehören, ist vollkommen überflüssig.

mysql_query    ("INSERT INTO accounts (login, password, email, flags, forceLanguage") VALUES

('$accname', '$passwd', '$email', '34', 'de');", $verbindung";

Hier steckt ein Fehler, wie Du ja selber bemerkt hast.
Da in zusammengebauten Queries aber sowieso öfter Fehler auftreten, bietet es ich an, _zuersrt_ das Query zu bauen

$sql = "INSERT INTO accounts
                (login,      password,  email,    flags, forceLanguage )
         VALUES ('$accname', '$passwd', '$email', '34' , 'de')";

und es dann anschließend erst zu benutzten:

$res = mysql_query($sql, $verbindung);

Wenn nämlich das Query jetzt schief geht, also $res === false ist, dann kannst Du Dir außer des Fehlerstatus von MySQL  mysql_error($verbindung)  auch das Query nochmal anzeigen lassen

echo htmlspecialchars($sql);

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de