Der Martin: Daten in datenbankschreiben

Beitrag lesen

Hallo,

ich bin ein neuling in Sachen PHP und trainiere gerade.

und da nimmst du dir als erstes ein so ehrgeiziges und komplexes Projekt vor?

Ich habe in der untersten Zeile immer ein Problem mit den VALUES..
Kann einer erkennen woran das liegt? Und wenn ja bitte erklären was ich falsch machte?

Eins nach dem anderen.

// die von der Eingabemaske übergebenen Werte werden nun in PHP konforme Variablen gepackt

Das ist galoppierender Unsinn. Wozu die Umkopiererei? Was willst du damit erreichen? Letztendlich erreichst du damit nur zwei Dinge: Der Speicherbedarf deines Scripts wird ein bisschen größer, und die Herkunft der Daten wird verschleiert, so dass die Gefahr von Leichtsinnsfehlern steigt.
Arbeite im Script direkt mit den Daten in $_POST.

// Verbindung zum MySQL Server starten
if (!($verbindung = mysql_pconnect ("$host", "$dbuser", "$dbpass")))

Wozu verpackst du Variablen vom Typ String ihrerseits nochmal ein Strings? Das ist sinnfrei.

if (!mysql_select_db ("$dbchar", $verbindung))

Dito.

//Daten in die Datenbank schreiben
mysql_query ("INSERT INTO accounts (login, password, email, flags, forceLanguage") VALUES ('$accname', '$passwd', '$email', '34', 'de');", $verbindung";

Achte hier mal genau auf die Anführungszeichen. Wo beginnt dein SQL-Query, und wo endet er wieder? Das dürfte dein akutes Hauptproblem sein.

Bitte seit etwas nachsichtig, ich hoffe der Code sieht wenigstens für euch Profis sauber aus...

Auf den ersten Blick ja. ;-)

So long,
 Martin

--
Okay, Alkohol ist keine Antwort.
Aber manchmal vergisst man beim Trinken wenigstens die Frage.