php-mailer gibt fehler aus... brauche eure hilfe
abdülmecit
- php
0 Fabian Transchel0 Mel
ich hab einen php-mailer geschrieben. die datei heisst mail.php und der quellcode ist:
<?php
$email_to = "$email";
$email_betreff = "PHP Test-Mailer";
?>
<html>
<head>
<title>PHP Test-Mailer</title>
</head>
<body>
<?php
if(!isset($email_freund)){
?>
<form method="POST" action="dank.htm">
<p><input type="text" name="email" size="20"> E-Mail</p>
<p><input type="checkbox" name="newsletter" value="OFF">Newsletter</p>
<p><input type="submit" value="Abschicken" name="B1"><input type="reset" value="Zurücksetzen" name="B2"></p>
</form>
<?php
}
else{
$header="From:$email";
mail($email_betreff,$newsletter,$header);
}
?>
</body>
</html>
sobald ich das ausgefüllte formular versenden möchte, erscheint die fehlermeldung:
Method Not Allowed
The requested method POST is not allowed for the URL /dank.htm.
Apache/1.3.23 Server at eaclan.ngz-server.de Port 80
könnt ihr mir vielleicht sagen, was ich ändern muss damit das ganze funktioniert? schonmal danke.
mfg abdülmecit
hi,
ich würde denken, dass man an eine *.htm-datei nix per GET oder POST schicken kann, da diese das nicht verarbeiten kann...
du musst dafür extra eine *.php datei schreiben, die die formulareingaben korrekt auswertet und dann die email verschickt, anders geht's IMHO nicht
Fabian
hier noch das funktionierende resultat...
irgendwie würde ich da noch
1. einen adressen-validator einbauen, weil sonst kann ich auch an webmaster@t-online schreiben und das gefällt dem bestimmt nicht...
2. eine antwortmeldung á la _mailgesendet_
einbauen...
Fabian
Hi,
Fuer die action im Form-tag darfst Du nicht "dank.htm" verwenden, sondern Deine PHP Seite (mail.php), die ja die Formangaben verwerten soll.
Die Weiterleitung auf dank.htm kommt dann am Ende der If-Else-Schleife. Versuch's mal so (Frage - wo wird $email-freund denn gesetzt?):
<?php
if(!isset($email_freund)){
?>
<form method="POST" action="mail.php">
^^^
<p><input type="text" name="email" size="20"> E-Mail</p>
<p><input type="checkbox" name="newsletter" value="OFF">Newsletter</p>
<p><input type="submit" value="Abschicken" name="B1"><input type="reset" value="Zurücksetzen" name="B2"></p>
</form>
<?php
}
else{
$header="From:$email";
mail($email_betreff,$newsletter,$header);
header("Location: dank.htm");
exit;
^^^^
}
?>
Gruss, Mel
ich habe die datei so ergänzt mel, wie du gesagt hast... und es funktioniert. mal sehen ob ich noch die mail erhalte.
ich habe die datei so ergänzt mel, wie du gesagt hast... und es funktioniert. mal sehen ob ich noch die mail erhalte.
ich hab grad gesehen, dass beim mail befehl die variable mit der e-mail adresse fehlt. *sich schäm* ... jetzt funktionierts logischerweise :-)
thx a lot an mel