PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Daten aus Formular schreibt er nicht in die Datenbank


Andy260477
02.06.2009, 20:40:05
Liebe User,

ich hoffe ich bin hier in dem Forum richtig.

Ich möchte mit nachfolgendem Script Daten aus einem Formular in eine Datenbank Tabelle schreiben lassen und anschließend per Mail eine Empfangsbestätigung versenden.

Das Versenden der Empfangsbestätigung klappt auch soweit. Nur der schreibt mir keine Daten in die Datenbank. Gibt aber auch keinen Fehler aus.

Hier mal das PHP Script:

<?php
$server = "rdbms.strato.de";
$user = "********";
$pass = "********";
$database = "*******";
$table = "newsletter";

$verbindung = mysql_connect($server, $user, $pass)
or die ("verbindung zu sql geht nicht");

mysql_select_db($database, $verbindung);


$subject="Deine Bestellung der Crazy Fan Tasse auf Crazy-Webradio";
$empf="order@************";
$name = $_POST["name"];
$vorname = $_POST["vorname"];
$strasse = $_POST["strasse"];
$plz = $_POST["plz"];
$ort = $_POST["ort"];
$email = $_POST["email"];
$produkt = $_POST["produkt"];
$preis = $_POST["preis"];
$stueck = $_POST["stueck"];
$info = $_POST["info"];
$warenwert = ($preis*$stueck);
$gesamtsumme = ($warenwert+3.95);
$datum = date("Y.d.m");
$absender="order@*********";

$sql="INSERT INTO newsletter ('`name`, `vorname`, 'email') VALUES (`$name`, `$vorname`, `$email`)";
mysql_query($sql);

$header = 'From: order@*********' . "\r\n" .
'Reply-To: order@********' . "\r\n" .
'X-Mailer: PHP/' . phpversion();


$text="

Sehr geehrte(r) $vorname $name ,

nachfolgende Bestellung wurde soeben von Ihnen auf der Webseite www.crazy-webradio.de aufgegeben:

bestelltes Produkt: $produkt
gewünschte Anzahl: $stueck

Name: $name
Vorname: $vorname

Strasse: $strasse
PLZ/Ort: $plz $ort

E-Mailadresse: $email

Sonstige Infos: $info

Warenwert: $warenwert Euro
zzgl. Versand: 3,95 Euro pro Bestellung

Gesamtwert der Bestellung: $gesamtsumme Euro

Bitte überweisen Sie den angegebenen Betrag von $gesamtsumme Euro binnen 14 Tagen auf nachfolgendes Konto:

Kontoinhaber: ******
Kontonummer: ********
Bankleitzahl: ********
Verwendungszweck: $name $vorname - $datum
Sparkasse

Wir bitten zu beachten, daß wir ausschließlich per Vorkasse versenden.

Nicht beglichene Bestellungen werden nach 14 Tagen vom System automatisch gelöscht.

Bei Fragen stehen wir ihnen gerne auch per Mail unter order@********** zur Verfügung.

Diese Mail wurde über das Bestellsystem von www.******** verschickt.";



mail($email, $subject, $text, "FROM: " . $absender);
mail($empf, $subject, $text, "FROM: " . $absender);


Header("Location: http://www.*******.de/index.php?option=com_content&view=article&id=57");
exit();



?>

Wie gesagt, die Mails gehen raus, allerdings auch mit einem kleinen Fehler, daß er da die Umlaute nicht darstellt.

Wäre euch echt dankbar, für nen Tip oder ne kleine Lösung.

Liebe Grüße
Andy

DokuLeseHemmung
02.06.2009, 20:55:31
Gibt aber auch keinen Fehler aus.
Wen wunderts?

Dein SQL Statement ist kaputt!
Wenn du das error_reporting() aktivieren würdest, dann könnte dir PHP das auch mitteilen. myql_error() kann dir dann auch noch genau sagen, wo und warum.

Andy260477
02.06.2009, 21:01:27
Kannst du mir denn genau sagen was da kaputt ist??

Ich bin in PHP nicht so bewandert und lerne mich da gerade ein.

vt1816
02.06.2009, 22:41:48
Kannst du mir denn genau sagen was da kaputt ist??

Das hier in die erste Zeile(n) Deines Codes und er redet wie ein Buch ...

error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', TRUE);

Andy260477
02.06.2009, 22:45:57
Der gibt mir nix aus, sondern arbeitet die PHP Datei komplett durch. Ohne Meldungen.

Bin langsam am verzweifeln hier. :(

vt1816
02.06.2009, 22:51:21
Dann erweitere noch wie folgt:

...
echo $sql;
mysql_query($sql) or die(mysql_error());
...

Andy260477
02.06.2009, 22:56:59
Danke das hat wenigstens ne Meldung gegeben.

Bekomme jetzt folgende Meldung:

INSERT INTO newsletter ('`name`, `vorname`, 'email') VALUES (`dfdsf`, `dsfdsf`, `info@crazy-webradio.de`)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 ''`name`, `vorname`, 'email') VALUES (`dfdsf`, `dsfdsf`, `info@crazy-webradio.de`' at line 1

Kann mir einer sagen woran das liegen kann??


HURRA Habs gefunden. DANKE für eure Hilfe