Mein Variomedia

Hier können Sie sich im Kundenmenü einloggen.




Passwort vergessen?

Weitere Logins

Sie befinden sich hier: variomedia.de > Support > Häufige Fragen (FAQ) > Webanwendungen und Datenbanken > PHP

Fragen und Antworten

Wie kann ich mit PHP ein Kontaktformular erstellen?

Kontaktformulare sind eine klassische Anwendung für PHP. In dieser Anleitung finden Sie alles, was Sie für ein eigenes Kontaktformular benötigen.

An Software benötigen Sie zunächsteinmal nichts weiter als einen Text-Editor, zum Beispiel das Notepad von Windows. Desweiteren sind grundlegendende HTML-Kenntnisse notwendig.

1. Schritt: Erstellen Sie ein Formular
Das Formular selbst lässt sich im Normalfall mit jedem beliebigen WYSIWYG-HTML-Editor erstellen, z.B. mit Frontpage oder Dreamweaver. Sie können das Formular nach Belieben gestalten, wichtig ist nur, dass Sie die Felder mit eindeutigen Bezeichnungen versehen. Der HTML-Quelltext Ihres Formulars könnte zum Beispiel so aussehen:

<form action="formular_senden.php" method="post" name="kontaktformular">
Name: <input type="text" name="fromname"> <br>
E-Mail-Adresse: <input type="text" name="from"> <br>
<input type="submit" name="Submit" value="Senden">
</form>

Dieser Ausschnitt einer HTML-Datei stellt ein voll funktionstüchtiges Formular dar. Es fehlt allerdings nun noch die Funktion, die Daten des Formulars auch per E-Mail zu verschicken. Dafür benötigen wir PHP.

2. Schritt: Versand der Daten per E-Mail
Erstellen Sie dazu bitte mit dem Editor eine neue Datei mit dem Namen "formular_senden.php". Sie können der Datei auch einen beliebigen anderen Namen geben, wichtig ist nur, dass dieser genau mit dem Namen übereinstimmt, den Sie im <form>-Tag im zuvor erstellen Formular übereinstimmt.

Bitte laden Sie sich zunächst folgende Dateien herunter und legen Sie diese im gleichen Verzeichnis wie die Datei "formular_senden.php" ab: class.phpmailer.php, class.smtp.php, PHPMailerAutoload.php und class.vrmdmailer.php.

Das Script formular_senden.php sollte folgenden Inhalt haben:

<?php
require_once('class.vrmdmailer.php');

// Hier geben Sie die Zugangsdaten für ein Postfach bei Variomedia an,
// mit dem Sie sich am SMTP-Server authentifizieren.
$benutzername="meinpostfach@meinedomain.de";
$kennwort="meinkennwortzumpostfach";

// Hier geben Sie den Empfänger und die Betreffzeile der E-Mail an.
$to="webmaster@meine-homepage.de";
$subject="Kontaktformular";

$fromname=$_REQUEST[fromname];
$from=$_REQUEST[from];

$message .= "Name: $fromname \n";
$message .= "E-Mail-Adresse: $from \n";

$mailer = new VRMDMailer($benutzername, $kennwort);

if(!$mailer->mail($to, $subject, $message, $from, $fromname)) {
echo 'Nachricht konnte nicht gesendet werden.';
echo 'Mailer Error: ' . $mailer->ErrorInfo;
exit;
}
?>

Zum Schluss müssen Sie nur noch die Werte für den Benutzername, Kennwort, Empfänger und Betreff anpassen - und fertig ist Ihr PHP-Formmail.

4. Schritt: Übertragen der Dateien auf den Webserver
Um das Formmail-Script auch nutzen zu können, müssen Sie das Dokument zusammen mit den weiteren Dateien auf den Webserver übertragen. Tragen Sie nun bitte zum Test Werte in Ihr Formular ein - wenige Sekunden später sollten Sie diese Werte in Ihrem E-Mail-Postfach wiederfinden.

5. Schritt: Erweiterung
Möchten Sie, dass das Formular weitere Felder enthält, müssen Sie lediglich das Formular erweitern und im Script die neuen Formularfelder abfragen. Gibt es zum Beispiel ein weiteres Feld für den Namen, könnte dies so im PHP-Script aussehen:

$firma=$_REQUEST[firma];
$message .= "Firma: $firma \n";

Achten Sie beim Hinzufügen weiterer Felder bitte unbedingt darauf, dass die Bezeichnungen der Felder im Formular und im Script übereinstimmen. Wenn Sie das Formularfeld "Name" nennen, im Script aber nach "name" gesucht wird, wird das Feld leer bleiben.
Übrigens: das "\n" in den PHP-Befehlen steht für einen Zeilenumbruch in der E-Mail, die Sie dann später erhalten werden.


Kontaktformular
PHP