Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

E-Mail Formular mit PHP





Frage

Hallo, ich mache gerade eine Kontaktseite für meine Page. Die eingabefelder sind auch schon fertig, und der abschickenknopf ist auch schon fertig. Nur bin ich jetzt auf das Problem gestoßen, dass es nicht verschickt wird. Wenn ich auf das abschicken-Button klicke öffnet sich bei mir mein E-Mailprogramm. Was für mich auch verständlich ist, da ich in der ertsen Formular-Zeile bei Action einen "mailto"-Befehl eingegeben habe: <form action="mailto:gab.......@xxxxxxxx.de" method="post" enctype="text/plain"> Statt dem Mailto-Befehl muß ich ja eine php-Datei angeben, die dieses Formular an meine E-Mail Adresse weiterschickt. Oder? Jetzt bin ich aber bei dem Problem. Was muß in dieser php-Datei drinnstehen. Wo wird meine E-ail Adresse hinterlegt? Oder, erledigt der Server meine E-Mail-Weiterleitung? Hoffe ihr könnt mir helfen. Vielen Dank Ironbird

Antwort 1 von rabies

Hab´ da mal eben was zusammengeschrieben:

Datei sendmail.php:

<?php
if(isset($_POST["message"])) {
if(isset($_POST["email"])) {
$mail = mail($_POST["email"],$_POST["betreff"],$_POST["message"],"From: ".$_POST["from"]);
}
else {
echo "Keine e-Mail Adresse angegeben. Die Mail wurde nicht gesendet.<br/>";
}
}
else {
echo "Es wurde keine Nachricht eingegeben. Die Mail wurde nicht gesendet.<br/>";
}
?>
<html>
<body>
<form action="sendmail.php" method="POST">
eMail: <input type="text" name="email"><br/>
Betreff: <input type="text" name="betreff"><br/>
Message: <textarea name="message"></textarea><br/>
<input type="hidden" name="from" value="none@testserver.com">
<input type="submit" value="abschicken">
</form>
</body>
</html>


______________________________________________
zur Erklärung: Von welcher Adresse die Mail dann sozusagen kommt steht in dem verstecktem input (type=hidden) mit dem name "from"

andere Möglichkeit wäre da noch, die Variable $_POST["from"] durch $from einzutauschen und fest im PHP Quelltext einzubetten. Dann musste Du sie so in den Quelltext oberhalb von den if-Abfragen schreiben: $from="deineAddy@provider.topLevelDomain";

Auf dem Server, auf dem das Script dann läuft, muss ein Mailserver laufen. Oder zumindest mb_send_mail in der php.ini aktiviert sein...

Ich hoffe, deine Problem sind nun beseitigt. :b

Greets,
Sven.

Antwort 2 von rabies

Öhm ja - nicht genug nachgedacht. Trennung von PHP und HTML (also zwei verschiedene Dateien -> einfach den ganzen html-Quatsch da nicht berücksichtigen etc.) wäre besser - ansonsten kommt die Meldung, dass keine Nachricht eingegeben wurde gleich, wenn man die Seite aufruft.

Und nochmals Greets.

Antwort 3 von Winnie

Umfassende Infos gibt es hier:

http://www.php-faq.de/ch/ch-mail.html

oder www.selfphp.de

Antwort 4 von Ironbird

Danke erstmal.

Werde mal demnächst alles studieren

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: