Was ist hier falsch?
Moritz Diekmann
- php
Hallo,
ich poste hier jetzt zum zweiten mal, weil ich mir wirklichnicht erklären kann, warum mein PHP Skript mein Flashformular auf der Seite: www.freshmilklive.de micht korrekt auswertet.
Das Skript lautet:
<?php
$message = "name: ".$name."\nEmail: ".$email."\nMessage:
".$message;
mail(info@freshmilklive.de", $subjekt, $message, "FROM: PHPMAiler\nReply-To: $email\nX-Mailer: PHP/" . phpversion());
?>
Was ist falsch, muss ich es auf dem Server besonders einbinden?
Zur Zeit liegt es im selben order wie die swf Datei.
Danke und Gruß
MOritz
Halihallo Moritz
$message = "name: ".$name."\nEmail: ".$email."\nMessage:
Woher kommt $name und $email? - Falls diese vom Formular (den Parametern) kommen, so
verwende ab jetzt $_GET oder $_POST (s. Formular-Methode), denn $name und $email sind
seit PHP 4.? per default nicht mehr zugreifbar (php.ini: register_globals=off seit
eben PHP 4.?).
mail(info@freshmilklive.de", $subjekt, $message, "FROM: PHPMAiler\nReply-To: $email\nX-Mailer: PHP/" . phpversion());
Es fehlt ein (") vor der E-Mail Adresse.
Was ist falsch, muss ich es auf dem Server besonders einbinden?
Ich könnte mir vorstellen, dass es eben an register_globals=off hängt. Verwende $_GET
bzw. $_POST. Ansonsten fehlt mir eine genaue Fehlerbeschreibung!
Viele Grüsse
Philipp
Hi,
micht korrekt auswertet.
Wie äußert sich das?
$message = "name: ".$name."\nEmail: ".$email."\nMessage:
$_GET[] bzw. $_POST[]
mail(info@freshmilklive.de", $subjekt, $message, "FROM: PHPMAiler\nReply-To: $email\nX-Mailer: PHP/" . phpversion());
Da fehlt ein Anführungszeichen.
Schönen Gruß,
Julian
Hallo,
ich poste hier jetzt zum zweiten mal, weil ich mir wirklichnicht erklären kann, warum mein PHP Skript mein Flashformular auf der Seite: www.freshmilklive.de micht korrekt auswertet.
Um das Problem einzukreisen, koenntest Du ja mal auf das Flash-Zeugs
verzichten und die Variablen $message und $subjekt gleich im PHP-Skript
selbst festlegen.
Vielleicht liegt es ja auch an register_globals=ON?
Die Variablen aus dem Formular solltest Du mit
$_POST['message'], $_GET['message'] oder $_REQUEST['message']
uebernehmen, und nicht einfach mit $message.
Mit dem Befehl
print_r($_POST); bzw. print_r($_GET); bzw. print_r($_REQUEST);
kannst Du ja mal schauen, was so fuer Variablen uebergeben wurden.
$message = "name: ".$name."\nEmail: ".$email."\nMessage:".$message;
(IMHO falscher) Zeilenumbruch entfernt.
Warum nicht einfach so:
$message = "name: $name\nEmail: $email\nMessage: $message";
mail(info@freshmilklive.de", $subjekt, $message, "FROM: PHPMAiler\nReply-To: $email\nX-Mailer: PHP/" . phpversion());
* Ist $subjekt definiert?
* Lass mal das vierte Argument weg.
* Im FROM sollte vielleicht eine E-Mail-Adresse stehen, und nicht bloss ein String.
Zur Zeit liegt es im selben order wie die swf Datei.
Das ist PHP herzlich egal. Und auch, was es fuer ein Formular ist
(sofern Flash in der Lage ist, ein Formular abzuschicken)
HTH, Gruesse,
Thomas