Hallo,
also erst mal vielen Dank für deine Antwort und viel Erfolg mit deinen Türen.
Ja, die UTF-8 Codierung bleibt erhalten.
Der Generator war von der Seite von Werner, ich habe einfach ein ganz normales Formular gestaltet, das nicht abgesendet wird. (natürlich habe ich meine E-Mail eingesetzt).
Code: Alles auswählen
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
body, textarea {
font-family: Verdana, Sans-Serif;
font-size: 1rem;
}
span.pflichtfeld {
font-size: 0.90rem;
color: Red;
}
span.hilfetext {
font-family: Arial, Tahoma, Sans-Serif;
font-size: 0.80rem;
font-style: Oblique;
color: #009500;
}
/* Design: Blue Angel */
input[type="text"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="email"],
input[type="date"],
input[type="time"],
input[type="checkbox"],
input[type="submit"],
input[type="reset"],
button[type="button"],
button[type="submit"],
textarea,
select {
border: Solid 1px #9A9A9A;
font-family: Verdana, Arial, Sans-Serif;
font-size: 0.95rem;
transition: box-shadow 0.3s;
}
input[type="text"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="date"]:focus,
input[type="time"]:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="checkbox"]:focus,
button[type="button"]:focus,
button[type="submit"]:focus,
textarea:focus,
select:focus {
border:0; outline:0; /* Chromium */
border: Solid 1px rgb(34,132,230);
box-shadow: 0px 0px 3px 0px rgb(34,132,230);
}
input[type="button"],
input[type="submit"],
input[type="reset"],
button[type="button"],
button[type="reset"] {
border: Solid 1px #9A9A9A;
background-color: #E1E1E1;
font-size: 0.95rem;
transition: background-color 0.4s;
}
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
button[type="button"]:hover,
button[type="reset"]:hover {
border: Solid 1px #0078D7;
background-color: #E5F1FB;
}
input[type="checkbox"]:checked + label,
input[type="radio"]:checked + label {
color: rgb(34,132,230);
}
label:hover {
color: rgb(34,132,230);
}
option:nth-child(even) {
background-color: #E5F1FB;
}
</style>
</head>
<body>
<?php
/*
Aktion: Formulardaten als E-Mail versenden.
Formular - PHP 5.4+, Zeichenkodierung: UTF-8
Siehe: https://werner-zenk.de/html/schriftzeichen_richtig_darstellen.php
Erstellt mit dem Formular Generator (18.12.2023) -
https://werner-zenk.de/tools/formulargenerator.php
Bitte testen Sie das Formular ausführlich und
beachten Sie die Hinweise im Quelltext!
*/
// PHP Fehlermeldungen (1 um das Formular zu testen) anzeigen.
error_reporting(1); // (0/1)
// Datei einbinden nach dem absenden des Formulars
// Relativer Pfad, ausgehend vom Formular:
$Include = "danke.htm";
// Wenn die E-Mail nicht versendet werden konnte:
$IncludeError = "fehler.htm";
$name = isset($_GET["name"]) ? htmlspecialchars(trim($_GET["name"])) : ""; // Name
$email = isset($_GET["email"]) ? htmlspecialchars(trim($_GET["email"])) : ""; // E-Mail
$betreff = isset($_GET["betreff"]) ? htmlspecialchars(trim($_GET["betreff"])) : ""; // Betreff
$nachricht = isset($_GET["nachricht"]) ? htmlspecialchars(trim($_GET["nachricht"])) : ""; // Nachricht
$KopieCk = isset($_GET["Kopie"]) ? " checked='checked'" : null; // E-Mail Kopie
// Benutzereingaben überprüfen
// Die Meldungen müssen hier eventuell angepasst werden.
$Fehler = ["name"=>"", "email"=>"", "betreff"=>"", "nachricht"=>"", "sicherheit"=>""];
if (isset($_GET["submit"])) {
$Fehler["name"] = strlen($_GET["name"]) < 1 ? " Bitte füllen Sie dieses Feld aus!" : "";
$Fehler["email"] = filter_var($_GET["email"], FILTER_VALIDATE_EMAIL) === false ? " Geben Sie eine gültige E-Mail-Adresse ein!" : "";
$Fehler["betreff"] = strlen($_GET["betreff"]) < 1 ? " Bitte füllen Sie dieses Feld aus!" : "";
$Fehler["nachricht"] = strlen($_GET["nachricht"]) < 11 ? " Bitte füllen Sie dieses Feld aus (min. 11 Zeichen)!" : "";
$Fehler["sicherheit"] = (md5($_GET["zip"]) != $_GET["zip2"]) ? "Die Rechenaufgabe ist leider falsch!" : "";
}
// Sicherheitsabfrage - Rechenaufgabe
$Z0 = [mt_rand(1, 9), mt_rand(1, 9)];
$Z1 = max($Z0); $Z2 = min($Z0);
$Spam = $Z1 . " + &#" . (48 + $Z2) . ";";
$Schutz = md5($Z1 + $Z2);
// Formular erstellen
$Formular = "
<form action='" . $_SERVER["SCRIPT_NAME"] . "' autocomplete='off' method='get'>
<p>
<label> Name:
<span class='pflichtfeld'>✲ " . $Fehler["name"] . "</span><br>
<input type='text' name='name' value='" . $name . "' size='35' required='required' tabindex='1'>
</label>
</p>
<p>
<label> E-Mail:
<span class='pflichtfeld'>✲ " . $Fehler["email"] . "</span><br>
<input type='email' name='email' value='" . $email . "' size='35' required='required' tabindex='2'>
</label>
</p>
<p>
<label> Betreff:
<span class='pflichtfeld'>✲ " . $Fehler["betreff"] . "</span><br>
<input type='text' name='betreff' value='" . $betreff . "' size='45' required='required' tabindex='3'>
</label>
</p>
<p>
<label> Nachricht:
<span class='pflichtfeld'>✲ " . $Fehler["nachricht"] . "</span><br>
<textarea name='nachricht' cols='40' rows='8' spellcheck='false' required='required' tabindex='4'>" . $nachricht . "</textarea>
</label>
</p>
<p>
<label> Sicherheitsabfrage:
<span class='pflichtfeld'>✲ " . $Fehler["sicherheit"] . "</span><br>
<em>" . $Spam . "</em> =
<input type='text' name='zip' size='4' pattern='[0-9]{1,2}' required='required' autocomplete='off'>
</label>
<input type='hidden' name='zip2' value='" . $Schutz . "'>
<br><span class='hilfetext'> Bitte lösen Sie die Rechenaufgabe. </span><br>
</p>
<p>
<br>
<input type='submit' name='submit' value='Formular absenden' tabindex='5'>
</p>
<p>
<small>Bitte alle mit <span class='pflichtfeld'>✲</span>
markierten Felder ausfüllen.</small>
</p>
</form>
";
// Formular abgesendet
if (isset($_GET["submit"])) {
// Sind keine Benutzer-Eingabefehler vorhanden
if (implode("", $Fehler) == "") {
// Daten als E-Mail versenden (Vorschlag) - Bitte anpassen!
// Zeitzone und das aktuelle Datum setzen
// http://de3.php.net/manual/de/timezones.europe.php
date_default_timezone_set("Europe/Berlin");
$Datum = date("d.m.Y H:i");
// Empfänger E-Mail
// Hier muss beim Provider eine bekannte E-Mail-Adresse eingetragen sein, weil "externe" E-Mail-Adressen vom
// Provider gesperrt werden und dies zur Ablehnung der Versendung der E-Mail durch den Provider führt.
$Mailto = "name@example.com";
// Inhalt der E-Mail setzen
$Text = " Gesendet am: $Datum Uhr
Name: $name
E-Mail: $email
Betreff: $betreff
Nachricht: $nachricht
";
// E-Mail versenden
mb_language("de");
mb_internal_encoding("UTF-8");
$Betreff = mb_encode_mimeheader($betreff, "UTF-8", "Q");
$Kopfzeile = "MIME-Version: 1.0;\nFrom: " . mb_encode_mimeheader($name, "UTF-8", "Q") .
"<" . $Mailto . ">" . "\nContent-Type: text/plain; Charset=UTF-8;\n";
if (mail($Mailto, $Betreff, $Text, $Kopfzeile)) {
// Datei einbinden
include $Include;
}
else {
// Fehler-Datei einbinden
include $IncludeError;
}
// E-Mail Kopie versenden (Vorschlag) - Bitte anpassen!
// Diese Nachricht wird automatisch an die E-Mail-Adresse des Besuchers gesendet.
// Name/Signatur
$Signatur = "";
// Betreff
$Betreff = "Kopie einer Nachricht";
// Inhalt der E-Mail setzen
$Text = " Vielen Dank für Ihren Besuch bei ...
Wir haben folgende Nachricht erhalten:
Name: $name
E-Mail: $email
Betreff: $betreff
Nachricht: $nachricht
Mit freundlichen Grüßen
$Signatur
";
// E-Mail Kopie versenden
mb_language("de");
mb_internal_encoding("UTF-8");
$Betreff = mb_encode_mimeheader($Betreff, "UTF-8", "Q");
$Kopfzeile = "MIME-Version: 1.0;\nFrom: " . mb_encode_mimeheader($Signatur, "UTF-8", "Q") .
"<" . $Mailto . ">" . "\nContent-Type: text/plain; Charset=UTF-8;\n";
if (mail($email, $Betreff, $Text, $Kopfzeile)) {
echo "<p>Sie erhalten eine Kopie der Nachricht an Ihre E-Mail-Adresse.</p>";
}
}
else {
// Formular und Benutzer-Eingabefehler ausgeben
echo "<p><span class='pflichtfeld'><strong>Eingabefehler, Bitte korrigieren</strong></span></p>";
echo $Formular;
}
}
else {
// Formular ausgeben
echo $Formular;
}
?>
</body>
</html>
-------------------------------------------------------------------------
Dieses Modifizierte Script das ich vor längerem generiert habe funktioniert. (Ich nenne es mal Skript 2)
Code: Alles auswählen
<?php
/*
Aktion: Formulardaten als E-Mail versenden.
Formular - PHP 5.4+, Zeichenkodierung: UTF-8
Erstellt mit dem Formular Generator (02.10.2022) -
http://www.nof-tutorials.com/Webbausteine-Formular-Generator/formulargenerator.php
Bitte testen Sie das Formular ausführlich und
beachten Sie die Hinweise im Quelltext!
*/
// PHP Fehlermeldungen (1 um das Formular zu testen) anzeigen.
error_reporting(0); // (0/1)
// Datei einbinden nach dem absenden des Formulars
// Relativer Pfad zur Datei:
$Include = "http://www.wandern.es/common/onlinerechner/danke.html";
// Wenn die E-Mail nicht versendet werden konnte:
$IncludeError = "./fehler.html";
$name = isset($_GET["name"]) ? strip_tags(trim($_GET["name"])) : ""; // Name
$vorame = isset($_GET["vorame"]) ? strip_tags(trim($_GET["vorame"])) : ""; // Vorname
$strasse = isset($_GET["strasse"]) ? strip_tags(trim($_GET["strasse"])) : ""; // Straße
$ort = isset($_GET["ort"]) ? strip_tags(trim($_GET["ort"])) : ""; // Ort
$telefon = isset($_GET["telefon"]) ? strip_tags(trim($_GET["telefon"])) : ""; // Telefon
$mobilnr = isset($_GET["mobilnr"]) ? strip_tags(trim($_GET["mobilnr"])) : ""; // Mobil-Nr
$email = isset($_GET["email"]) ? strip_tags(trim($_GET["email"])) : ""; // E-Mail
$nachricht = isset($_GET["nachricht"]) ? strip_tags(trim($_GET["nachricht"])) : ""; // Nachricht
$hin = isset($_GET["hin"]) ? strip_tags(trim($_GET["hin"])) : ""; // Abfahrt Datum
$zur = isset($_GET["zur"]) ? strip_tags(trim($_GET["zur"])) : ""; // Rückkunft Datum
$typ = isset($_GET["typ"]) ? strip_tags(trim($_GET["typ"])) : ""; // Ferienwohnung Typ
$erw = isset($_GET["erw"]) ? strip_tags(trim($_GET["erw"])) : ""; // Anzahl Erwachsene
$kin = isset($_GET["kin"]) ? strip_tags(trim($_GET["kin"])) : ""; // Anzahl Kinder unter 15
$preis_erw = isset($_GET["preis_erw"]) ? strip_tags(trim($_GET["preis_erw"])) : ""; // Reisepreis Erwachsene
$preis_kin = isset($_GET["preis_kin"]) ? strip_tags(trim($_GET["preis_kin"])) : ""; // Reisepreis Kinder
$gp = isset($_GET["gp"]) ? strip_tags(trim($_GET["gp"])) : ""; // Gesamt Preis
$KopieCk = isset($_GET["Kopie"]) ? " checked='checked'" : null; // E-Mail Kopie
// Benutzereingaben überprüfen
// Die Meldungen müssen hier eventuell angepasst werden.
$Fehler = ["name"=>"", "sicherheit"=>""];
if (isset($_GET["submit"])) {
$Fehler["name"] = strlen($_GET["name"]) < 1 ? " Bitte füllen Sie dieses Feld aus!" : "";
$Fehler["name"] = strlen($_GET["email"]) < 1 ? " Bitte geben Sie eine gültige E-Mail Adresse an!" : "";
$Fehler["sicherheit"] = (md5($_GET["zip"]) != $_GET["zip2"]) ? "Die Rechenaufgabe ist leider falsch!" : "";
}
// Sicherheitsabfrage - Rechenaufgabe
$Z0 = [mt_rand(1, 9), mt_rand(1, 9)];
$Z1 = max($Z0); $Z2 = min($Z0);
$Spam = $Z1 . " + &#" . (48 + $Z2) . ";";
$Schutz = md5($Z1 + $Z2);
// Formular erstellen
$Formular = "
<div class='container'>
<form action='http://www.wandern.es/common/onlinerechner/anfrage_buchung.php' method='get'>
<div class='form-group'>
<label for='name'>Name <span class='pflichtfeld'>✲ " . $Fehler["name"] . "</span></label>
<input type='text' class='form-control' id='name' name='name' value='" . $name . "'>
</div>
<div class='form-group'>
<label for='vorame'>Vorname</label>
<input type='text' class='form-control' id='vorame' name='vorame' value='" . $vorame . "'>
</div>
<div class='form-group'>
<label for='strasse'>Straße</label>
<input type='text' class='form-control' id='strasse' name='strasse' value='" . $strasse . "'>
</div>
<div class='form-group'>
<label for='ort'>Ort</label>
<input type='text' class='form-control' id='ort' name='ort' value='" . $ort . "'>
</div>
<div class='form-group'>
<label for='telefon'>Telefon</label>
<input type='text' class='form-control' id='telefon' name='telefon' value='" . $telefon . "'>
</div>
<div class='form-group'>
<label for='mobilnr'>Mobil-Nr</label>
<input type='text' class='form-control' id='mobilnr' name='mobilnr' value='" . $mobilnr . "'>
</div>
<div class='form-group'>
<label for='email'>E-Mail <span class='pflichtfeld'>✲ " . $Fehler["email"] . "</span></label>
<input type='text' class='form-control' id='email' name='email' value='" . $email . "'>
</div>
<div class='form-group'>
<label for='nachricht'>Nachricht</label>
<input type='text' class='form-control' id='nachricht' name='nachricht' value='" . $nachricht . "'>
</div>
<div class='form-group'>
<label for='hin'>Abfahrt Datum</label>
<input type='text' class='form-control' id='hin' name='hin' value='" . $hin . "' readonly>
</div>
<div class='form-group'>
<label for='zur'>Rückkunft Datum</label>
<input type='text' class='form-control' id='zur' name='zur' value='" . $zur . "' readonly>
</div>
<div class='form-group'>
<label for='typ'>Ferienwohnung Typ</label>
<input type='text' class='form-control' id='typ' name='typ' value='" . $typ . "' readonly>
</div>
<div class='form-group'>
<label for='erw'>Anzahl Erwachsene</label>
<input type='text' class='form-control' id='erw' name='erw' value='" . $erw . "' readonly>
</div>
<div class='form-group'>
<label for='kin'>Anzahl Kinder unter 15</label>
<input type='text' class='form-control' id='kin' name='kin' value='" . $kin . "' readonly>
</div>
<div class='form-group'>
<label for='preis_erw'>Reisepreis Erwachsene</label>
<input type='text' class='form-control' id='preis_erw' name='preis_erw' value='" . $preis_erw . "' readonly>
</div>
<div class='form-group'>
<label for='preis_kin'>Reisepreis Kinder</label>
<input type='text' class='form-control' id='preis_kin' name='preis_kin' value='" . $preis_kin . "' readonly>
</div>
<div class='form-group'>
<label for='gp'>Gesamt Preis</label>
<input type='text' class='form-control' id='gp' name='gp' value='" . $gp . "' readonly>
</div>
<div class='form-group'>
<label for='zip'>Sicherheitsabfrage<span class='pflichtfeld'>✲ " . $Fehler["sicherheit"] . "</span></label>
<em>" . $Spam . "</em> =
<input type='text' class='form-control' id='zip' name='zip' autocomplete='off'>
</div>
<input type='hidden' name='zip2' value='" . $Schutz . "'>
<button type='submit' name='submit' class='btn btn-primary'>Formular absenden</button>
<p class='small'>Bitte alle mit <span class='pflichtfeld'>✲</span> markierten Felder ausfüllen.</p>
</form>
</div>
";
// Formular abgesendet
if (isset($_GET["submit"])) {
// Sind keine Benutzer-Eingabefehler vorhanden
if (implode("", $Fehler) == "") {
// Daten als E-Mail versenden (Vorschlag) - Bitte anpassen!
// Zeitzone und das aktuelle Datum setzen
// http://de3.php.net/manual/de/timezones.europe.php
date_default_timezone_set("Europe/Berlin");
$Datum = date("d.m.Y H:i");
// Empfänger E-Mail
$Mailto = "xxx";
$betreff = "Anfrage-Formular-Onlinerechner"; // Betreff
// Inhalt der E-Mail setzen
$Text = " Gesendet am: $Datum Uhr
Ein Besucher der Seite hat eine Anfrage über den Onlinerechner gestellt, mit folgendem Inhalt:
Name: $name
Vorname: $vorame
Straße: $strasse
Ort: $ort
Telefon: $telefon
Mobil-Nr: $mobilnr
E-Mail: $email
Nachricht: $nachricht
Abfahrt Datum: $hin
Rückkunft Datum: $zur
Ferienwohnung Typ: $typ
Anzahl Erwachsene: $erw
Anzahl Kinder unter 15: $kin
Reisepreis Erwachsene: $preis_erw
Reisepreis Kinder: $preis_kin
Gesamt Preis: $gp
";
// E-Mail versenden
mb_internal_encoding("UTF-8");
$Betreff = mb_encode_mimeheader($betreff, "UTF-8", "Q");
$Kopfzeile = "MIME-Version: 1.0;\nFrom: " . mb_encode_mimeheader($name, "UTF-8", "Q") .
"<" . $email . ">" . "\nContent-Type: text/plain; Charset=UTF-8;\n";
if (mail($Mailto, $Betreff, $Text, $Kopfzeile)) {
echo "Vielen Dank! Die Anfrage wurde erfolgreich versendet.
<br> Sie erhalten eine Kopie der Anfrage
<br> Bitte schauen Sie auch in Ihren Spam Ordner.";
// Datei einbinden
include $Include;
}
else {
// Fehler-Datei einbinden
include $IncludeError;
}
// E-Mail Kopie versenden (Vorschlag) - Bitte anpassen!
// Diese Nachricht wird automatisch an die E-Mail-Adresse des Besuchers gesendet.
// Name/Signatur
$Signatur = "Mit den besten Grüßen, Ihr Team";
// Betreff
$Betreff = "Kopie einer Nachricht";
// Inhalt der E-Mail setzen
$Text = " Vielen Dank für Ihre Anfrage.
Wir haben ihre Anfrage erhalten und werden schnellstmöglich die Verfügbarkeit prüfen.
Bitte haben Sie Verständnis, dass dies bis zu 48h dauern kann. Vielen Dank für Ihre Geduld.
Telefonische Beratung & Buchung MO - FR 9:00 - 18:00 Uhr
Name: $name
Vorname: $vorame
Straße: $strasse
Ort: $ort
Telefon: $telefon
Mobil-Nr: $mobilnr
E-Mail: $email
Nachricht: $nachricht
Abfahrt Datum: $abfahrt_datum
Rückkunft Datum: $rueckkunft_datum
Ferienwohnung Typ: $ferienwohnung_typ
Anzahl Erwachsene: $anzahl_erwachsene
Anzahl Kinder unter 15: $anzahl_kinder_unter_15
Reisepreis Erwachsene: $reisepreis_erwachsene
Reisepreis Kinder: $reisepreis_kinder
Gesamt Preis: $gesamt_preis
$Signatur
";
// E-Mail Kopie versenden
$Betreff = mb_encode_mimeheader($Betreff, "UTF-8", "Q");
$Kopfzeile = "MIME-Version: 1.0;\nFrom: " . mb_encode_mimeheader($Signatur, "UTF-8", "Q") .
"<" . $Mailto . ">" . "\nContent-Type: text/plain; Charset=UTF-8;\n";
if (mail($email, $Betreff, $Text, $Kopfzeile)) {
echo " ";
}
}
else {
// Formular und Benutzer-Eingabefehler ausgeben
echo $Formular;
}
}
else {
// Formular ausgeben
echo $Formular;
}
?>
---------------------------------------------------------------------------------------------------------
[b]Von Skript 2 habe ich eine Kopie mit verschiedenen Änderungen gemacht.(also Skript 3), funktioniert zwar mit dem Absenden, die ausgefüllten Formularfelder werden auch übermittelt aber die Änderungen im $Text werden nicht übernommen und kommen wie in Skript 1 an. Und die gelöschten [/b]
[i]Abfahrt Datum: $abfahrt_datum
Rückkunft Datum: $rueckkunft_datum
Ferienwohnung Typ: $ferienwohnung_typ
Anzahl Erwachsene: $anzahl_erwachsene
Anzahl Kinder unter 15: $anzahl_kinder_unter_15
Reisepreis Erwachsene: $reisepreis_erwachsene
Reisepreis Kinder: $reisepreis_kinder
Gesamt Preis: $gesamt_preis
Abfahrt Datum: $hin
Rückkunft Datum: $zur
Ferienwohnung Typ: $typ
Anzahl Erwachsene: $erw
Anzahl Kinder unter 15: $kin
Reisepreis Erwachsene: $preis_erw
Reisepreis Kinder: $preis_kin
Gesamt Preis: $gp
[/i]
[b]werden weiterhin übermittelt. [/b]
[b]Hier Skript 3 (Kopie von Skript 2) an den "head Bereich" habe ich jeweils gedacht. Wie gesagt, dieses Formular kommt genau so an wie Skript 2. [/b]
<?php
/*
Aktion: Formulardaten als E-Mail versenden.
Formular - PHP 5.4+, Zeichenkodierung: UTF-8
Erstellt mit dem Formular Generator (02.10.2022) -
http://www.nof-tutorials.com/Webbausteine-Formular-Generator/formulargenerator.php
Bitte testen Sie das Formular ausführlich und
beachten Sie die Hinweise im Quelltext!
*/
// PHP Fehlermeldungen (1 um das Formular zu testen) anzeigen.
error_reporting(0); // (0/1)
// Datei einbinden nach dem absenden des Formulars
// Relativer Pfad zur Datei:
$Include = "";
// Wenn die E-Mail nicht versendet werden konnte:
$IncludeError = "./fehler.html";
$name = isset($_GET["name"]) ? strip_tags(trim($_GET["name"])) : ""; // Name
$vorame = isset($_GET["vorame"]) ? strip_tags(trim($_GET["vorame"])) : ""; // Vorname
$strasse = isset($_GET["strasse"]) ? strip_tags(trim($_GET["strasse"])) : ""; // Straße
$ort = isset($_GET["ort"]) ? strip_tags(trim($_GET["ort"])) : ""; // Ort
$telefon = isset($_GET["telefon"]) ? strip_tags(trim($_GET["telefon"])) : ""; // Telefon
$mobilnr = isset($_GET["mobilnr"]) ? strip_tags(trim($_GET["mobilnr"])) : ""; // Mobil-Nr
$email = isset($_GET["email"]) ? strip_tags(trim($_GET["email"])) : ""; // E-Mail
$nachricht = isset($_GET["nachricht"]) ? strip_tags(trim($_GET["nachricht"])) : ""; // Nachricht
$KopieCk = isset($_GET["Kopie"]) ? " checked='checked'" : null; // E-Mail Kopie
// Benutzereingaben überprüfen
// Die Meldungen müssen hier eventuell angepasst werden.
$Fehler = ["name"=>"", "sicherheit"=>""];
if (isset($_GET["submit"])) {
$Fehler["name"] = strlen($_GET["name"]) < 1 ? " Bitte füllen Sie dieses Feld aus!" : "";
$Fehler["name"] = strlen($_GET["email"]) < 1 ? " Bitte geben Sie eine gültige E-Mail Adresse an!" : "";
$Fehler["sicherheit"] = (md5($_GET["zip"]) != $_GET["zip2"]) ? "Die Rechenaufgabe ist leider falsch!" : "";
}
// Sicherheitsabfrage - Rechenaufgabe
$Z0 = [mt_rand(1, 9), mt_rand(1, 9)];
$Z1 = max($Z0); $Z2 = min($Z0);
$Spam = $Z1 . " + &#" . (48 + $Z2) . ";";
$Schutz = md5($Z1 + $Z2);
// Formular erstellen
$Formular = "
<div class='container'>
<div class='form-group'>
<form action='http://www.wandern.es/common/onlinerechner/anfrage_buchung.php' method='get'>
<label for='name'>Name <span class='pflichtfeld'>✲ " . $Fehler["name"] . "</span></label>
<input type='text' class='form-control' id='name' name='name' value='" . $name . "'>
</div>
<div class='form-group'>
<label for='vorame'>Vorname</label>
<input type='text' class='form-control' id='vorame' name='vorame' value='" . $vorame . "'>
</div>
<div class='form-group'>
<label for='strasse'>Straße</label>
<input type='text' class='form-control' id='strasse' name='strasse' value='" . $strasse . "'>
</div>
<div class='form-group'>
<label for='ort'>Ort</label>
<input type='text' class='form-control' id='ort' name='ort' value='" . $ort . "'>
</div>
<div class='form-group'>
<label for='telefon'>Telefon</label>
<input type='text' class='form-control' id='telefon' name='telefon' value='" . $telefon . "'>
</div>
<div class='form-group'>
<label for='mobilnr'>Mobil-Nr</label>
<input type='text' class='form-control' id='mobilnr' name='mobilnr' value='" . $mobilnr . "'>
</div>
<div class='form-group'>
<label for='email'>E-Mail <span class='pflichtfeld'>✲ " . $Fehler["email"] . "</span></label>
<input type='text' class='form-control' id='email' name='email' value='" . $email . "'>
</div>
<div class='form-group'>
<label for='nachricht'>Nachricht</label>
<input type='text' class='form-control' id='nachricht' name='nachricht' value='" . $nachricht . "'>
</div>
<div class='form-group'>
<label for='zip'>Sicherheitsabfrage<span class='pflichtfeld'>✲ " . $Fehler["sicherheit"] . "</span></label>
<em>" . $Spam . "</em> =
<input type='text' class='form-control' id='zip' name='zip' autocomplete='off'>
</div>
<input type='hidden' name='zip2' value='" . $Schutz . "'>
<button type='submit' name='submit' class='btn btn-primary'>Formular absenden</button>
<p class='small'>Bitte alle mit <span class='pflichtfeld'>✲</span> markierten Felder ausfüllen.</p>
</form>
</div>
";
// Formular abgesendet
if (isset($_GET["submit"])) {
// Sind keine Benutzer-Eingabefehler vorhanden
if (implode("", $Fehler) == "") {
// Daten als E-Mail versenden (Vorschlag) - Bitte anpassen!
// Zeitzone und das aktuelle Datum setzen
// http://de3.php.net/manual/de/timezones.europe.php
date_default_timezone_set("Europe/Berlin");
$Datum = date("d.m.Y H:i");
// Empfänger E-Mail
$Mailto = "jg@xxx.es";
$betreff = "Anfrage-Formular-Onlinerechner"; // Betreff
// Inhalt der E-Mail setzen
$Text = " Gesendet am: $Datum Uhr
Ein Besucher der Seite xy.com hat eine Anfrage über den Onlinerechner gestellt, mit folgendem Inhalt:
Name: $name
Vorname: $vorame
Straße: $strasse
Ort: $ort
Telefon: $telefon
Mobil-Nr: $mobilnr
E-Mail: $email
Nachricht: $nachricht
";
// E-Mail versenden
mb_internal_encoding("UTF-8");
$Betreff = mb_encode_mimeheader($betreff, "UTF-8", "Q");
$Kopfzeile = "MIME-Version: 1.0;\nFrom: " . mb_encode_mimeheader($name, "UTF-8", "Q") .
"<" . $email . ">" . "\nContent-Type: text/plain; Charset=UTF-8;\n";
if (mail($Mailto, $Betreff, $Text, $Kopfzeile)) {
echo "Vielen Dank! Die Anfrage wurde erfolgreich versendet.
<br> Sie erhalten eine Kopie der Anfrage
<br> Bitte schauen Sie auch in Ihren Spam Ordner.";
// Datei einbinden
include $Include;
}
else {
// Fehler-Datei einbinden
include $IncludeError;
}
// E-Mail Kopie versenden (Vorschlag) - Bitte anpassen!
// Diese Nachricht wird automatisch an die E-Mail-Adresse des Besuchers gesendet.
// Name/Signatur
$Signatur = "Mit den besten Grüßen, Ihr Team";
// Betreff
$Betreff = "Kopie einer Nachricht";
// Inhalt der E-Mail setzen
$Text = " Vielen Dank für Ihre Anfrage.
Wir haben ihre Anfrage erhalten und werden schnellstmöglich bei Ihnen melden.
Bitte haben Sie Verständniss, dass dies bis zu 48h dauern kann. Vielen Dank für Ihre Geduld.
Telefonische Beratung & Buchung MO - FR 9:00 - 18:00 Uhr
Name: $name
Vorname: $vorame
Straße: $strasse
Ort: $ort
Telefon: $telefon
Mobil-Nr: $mobilnr
E-Mail: $email
Nachricht: $nachricht
$Signatur
";
// E-Mail Kopie versenden
$Betreff = mb_encode_mimeheader($Betreff, "UTF-8", "Q");
$Kopfzeile = "MIME-Version: 1.0;\nFrom: " . mb_encode_mimeheader($Signatur, "UTF-8", "Q") .
"<" . $Mailto . ">" . "\nContent-Type: text/plain; Charset=UTF-8;\n";
if (mail($email, $Betreff, $Text, $Kopfzeile)) {
echo " ";
}
}
else {
// Formular und Benutzer-Eingabefehler ausgeben
echo $Formular;
}
}
else {
// Formular ausgeben
echo $Formular;
}
?>
Ich hoffe es ist jetzt etwas verständlicher.
Vielen Dank und beste Grüße