Kontaktformular
-
- Mitglied (Level 3)
- Beiträge: 20
- Registriert: Mo 3. Okt 2022, 15:12
- Wohnort: Calonge, Spanien
- Kontaktdaten:
Kontaktformular
Hallo, ich habe über das Tutorial "Kontaktformular von Werner Zenk" ein Formular gebaut.
Dies funktioniert auch sehr gut.
Jetzt wollte ich ein neues bauen, die wird aber partu nicht abgesendet.
So habe ich das funktionierende (erste) kopiert und kleine Veränderungen im Code vorgenommen.
z.B
$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 0681-303200 MO - FR 9:00 - 18:00 Uhr
komischerweise kommt aber genau das erste Formular u. Kopie bei mir an.
Ich weiß nicht weiter, was kann das sein?
Danke und viele Grüße
Dies funktioniert auch sehr gut.
Jetzt wollte ich ein neues bauen, die wird aber partu nicht abgesendet.
So habe ich das funktionierende (erste) kopiert und kleine Veränderungen im Code vorgenommen.
z.B
$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 0681-303200 MO - FR 9:00 - 18:00 Uhr
komischerweise kommt aber genau das erste Formular u. Kopie bei mir an.
Ich weiß nicht weiter, was kann das sein?
Danke und viele Grüße
Beste Grüße aus Spanien,
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
- Tommy Herrmann
- Site Admin
- Beiträge: 5921
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Kontaktformular
Moin Jörg,
... also mit den Infos, die Du uns bisher gegeben hast, ist es mir nicht möglich etwas zu sagen.
Wie änderst Du denn diese Skripte? Achtest Du darauf, dass diese in der Codierung "UTF-8" auch erhalten bleiben. Das geht nur mit einem vernünftigen Editor, wie z.B. dem neusten Windows 11 "Notepad" oder auch einem Editor wie "Notepad++"
Welches Tutorial hast Du verwendet und welchen "Formular Generator". War das von meiner Seite?
https://www.mobirise-tutorials.com/Formular-Generator/
Sonst kopiere doch mal das gesamte Skript hier ins Forum und mache Deine E-Mail unkenntlich.
Zur Not kann dann auch unser Werner mal hier gucken. Ich verschiebe Deinen Beitrag auch nach:
"Werner Zenk - Anwendungen und Skripte"
Ich persönlich bin gerade etwas im Stress, denn das Türschloss zu meinem Atelier-Gebäude (mit mehreren Mietern) ist soeben kaputt gegangen. Es muss gleich ein neues eingebaut werden und ich brauche 12 Schlüssel. Kann sein, dass ich erst wieder morgen antworten kann.
... also mit den Infos, die Du uns bisher gegeben hast, ist es mir nicht möglich etwas zu sagen.
Wie änderst Du denn diese Skripte? Achtest Du darauf, dass diese in der Codierung "UTF-8" auch erhalten bleiben. Das geht nur mit einem vernünftigen Editor, wie z.B. dem neusten Windows 11 "Notepad" oder auch einem Editor wie "Notepad++"
Welches Tutorial hast Du verwendet und welchen "Formular Generator". War das von meiner Seite?
https://www.mobirise-tutorials.com/Formular-Generator/
Sonst kopiere doch mal das gesamte Skript hier ins Forum und mache Deine E-Mail unkenntlich.
Zur Not kann dann auch unser Werner mal hier gucken. Ich verschiebe Deinen Beitrag auch nach:
"Werner Zenk - Anwendungen und Skripte"
Ich persönlich bin gerade etwas im Stress, denn das Türschloss zu meinem Atelier-Gebäude (mit mehreren Mietern) ist soeben kaputt gegangen. Es muss gleich ein neues eingebaut werden und ich brauche 12 Schlüssel. Kann sein, dass ich erst wieder morgen antworten kann.
-
- Mitglied (Level 3)
- Beiträge: 20
- Registriert: Mo 3. Okt 2022, 15:12
- Wohnort: Calonge, Spanien
- Kontaktdaten:
Re: Kontaktformular
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).
-------------------------------------------------------------------------
Dieses Modifizierte Script das ich vor längerem generiert habe funktioniert. (Ich nenne es mal Skript 2)
Ich hoffe es ist jetzt etwas verständlicher.
Vielen Dank und beste Grüße
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
Beste Grüße aus Spanien,
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
- Tommy Herrmann
- Site Admin
- Beiträge: 5921
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Kontaktformular
auf die Schnelle sehe ich gerade nichts - gucke aber morgen nochmals genauer.
Du darfst aber nur den PHP-Teil in Mobirise einbauen (so wie beim unteren, zweiten Formular) , nicht etwas die gesamte HTML-Seite.
Also nur diesen Teil vom oberen Skript:
Hast Du das getan?
Siehe dazu auch mein Tutorial:
https://www.mobirise-tutorials.com/Form ... /#Tutorial
Du darfst aber nur den PHP-Teil in Mobirise einbauen (so wie beim unteren, zweiten Formular) , nicht etwas die gesamte HTML-Seite.
Also nur diesen Teil vom oberen Skript:
Code: Alles auswählen
<?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;
}
?>
Siehe dazu auch mein Tutorial:
https://www.mobirise-tutorials.com/Form ... /#Tutorial
-
- Mitglied (Level 3)
- Beiträge: 20
- Registriert: Mo 3. Okt 2022, 15:12
- Wohnort: Calonge, Spanien
- Kontaktdaten:
Re: Kontaktformular
Ja, das habe ich getan.
Beste Grüße aus Spanien,
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
- Tommy Herrmann
- Site Admin
- Beiträge: 5921
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Kontaktformular
Dann poste bitte hier auch noch einen Link (URL) zu dieser Seite mit dem Formular. Wenn diese nicht online ist, dann publiziere sie in ein Test-Verzeichnis.
Ich gucke dann morgen früh nochmals. Wenn ich nichts finde, werde ich versuchen Werner zu erreichen.
Ich gucke dann morgen früh nochmals. Wenn ich nichts finde, werde ich versuchen Werner zu erreichen.
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
- Tommy Herrmann
- Site Admin
- Beiträge: 5921
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Kontaktformular
Moin,
danke Werner - jetzt hast Du es schon selbst entdeckt. Danke für Deine Hilfe
Gibst Du mir auch kurz Nachhilfe - bitte ?
Das vom Jörg oben gepostete (erste) Formular mit der Methode "GET" funktioniert bei mir einwandfrei, ich habe es gerade vollkommen unverändert getestet, wozu ich gestern keine Zeit mehr hatte.
Die Mail an mich sowie auch die Kopie kamen korrekt an.
Hat es denn dann damit zu tun, dass GET durch die URL auf 2.048 Zeichen begrenzt ist und die Methode "POST" dagegen keine Beschränkungen hat - oder womit?
... und Jörg da diesen ellenlangen Text (das alleine sind ja schon 266 Zeichen) eingefügt hat:
danke Werner - jetzt hast Du es schon selbst entdeckt. Danke für Deine Hilfe
Gibst Du mir auch kurz Nachhilfe - bitte ?
Das vom Jörg oben gepostete (erste) Formular mit der Methode "GET" funktioniert bei mir einwandfrei, ich habe es gerade vollkommen unverändert getestet, wozu ich gestern keine Zeit mehr hatte.
Die Mail an mich sowie auch die Kopie kamen korrekt an.
Hat es denn dann damit zu tun, dass GET durch die URL auf 2.048 Zeichen begrenzt ist und die Methode "POST" dagegen keine Beschränkungen hat - oder womit?
... und Jörg da diesen ellenlangen Text (das alleine sind ja schon 266 Zeichen) eingefügt hat:
Variable Text hat geschrieben:
$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 0681-303200 MO - FR 9:00 - 18:00 Uhr ...
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Kontaktformular
Moin,
wie du geschrieben hast, ist die Länge der Zeichen über GET beschränkt, die Länge ist bei jedem Browser unterschiedlich.
Und das da dann mit GET sämtlicher Inhalt aus dem Formular auch richtig gesendet wird kann ich nicht bestätigen, da es viele unterschiedliche Formularfelder und Funktionen gibt, habe ich diese nicht alle durchgetestet.
Datenschutz-rechtlich ist das eine Katastrophe, sämtliche Daten werden in der Adresszeile des Browsers angezeigt
und können in der Browser-History (oder als Lesezeichen gespeichert) wieder aufgerufen und manipuliert werden.
Da es zudem keine Https-Seiten sind, in denen die Formulare laufen, würde ich mich als Benutzer sehr unwohl fühlen.
Ich weiß, der Formular Generator verführt zum Spielen und man kann da leicht Optionen auswählen, die man nicht ganz versteht, deren Tragweite aber für das Funktionieren des Skripts entscheidend ist.
Grundsätzlich braucht man in den Generator-Optionen nichts einzustellen, die Voreinstellungen genügen damit das Skript läuft.
Nachtrag: GET verwendet man, um auf einer Seite zu navigieren oder in einem Formular für eine Suche, um Daten zu übermitteln und die Ergebnisse der Suche kann man dann in den Lesezeichen für einen späteren Aufruf speichern.
wie du geschrieben hast, ist die Länge der Zeichen über GET beschränkt, die Länge ist bei jedem Browser unterschiedlich.
Und das da dann mit GET sämtlicher Inhalt aus dem Formular auch richtig gesendet wird kann ich nicht bestätigen, da es viele unterschiedliche Formularfelder und Funktionen gibt, habe ich diese nicht alle durchgetestet.
Datenschutz-rechtlich ist das eine Katastrophe, sämtliche Daten werden in der Adresszeile des Browsers angezeigt
und können in der Browser-History (oder als Lesezeichen gespeichert) wieder aufgerufen und manipuliert werden.
Da es zudem keine Https-Seiten sind, in denen die Formulare laufen, würde ich mich als Benutzer sehr unwohl fühlen.
Ich weiß, der Formular Generator verführt zum Spielen und man kann da leicht Optionen auswählen, die man nicht ganz versteht, deren Tragweite aber für das Funktionieren des Skripts entscheidend ist.
Grundsätzlich braucht man in den Generator-Optionen nichts einzustellen, die Voreinstellungen genügen damit das Skript läuft.
Nachtrag: GET verwendet man, um auf einer Seite zu navigieren oder in einem Formular für eine Suche, um Daten zu übermitteln und die Ergebnisse der Suche kann man dann in den Lesezeichen für einen späteren Aufruf speichern.
Zuletzt geändert von Werner-Zenk.de am Di 19. Dez 2023, 09:21, insgesamt 1-mal geändert.
Werner
https://werner-zenk.de
https://werner-zenk.de
- Tommy Herrmann
- Site Admin
- Beiträge: 5921
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Kontaktformular
Hallo Werner,
vielen Dank für diese Erklärung - das sollte man natürlich wissen, bevor man da z.B. "GET" einstellt.
Ich verwende Deinen Generator ja nun schon immer (viele, viele Jahre) - bisher aber immer mit "POST".
@ Jörg,
also - erstelle Deine Formulare nochmals neu mit der Methode "POST" und gut ist
vielen Dank für diese Erklärung - das sollte man natürlich wissen, bevor man da z.B. "GET" einstellt.
Ich verwende Deinen Generator ja nun schon immer (viele, viele Jahre) - bisher aber immer mit "POST".
@ Jörg,
also - erstelle Deine Formulare nochmals neu mit der Methode "POST" und gut ist
-
- Mitglied (Level 3)
- Beiträge: 20
- Registriert: Mo 3. Okt 2022, 15:12
- Wohnort: Calonge, Spanien
- Kontaktdaten:
Re: Kontaktformular
Hallo Werner und Thommy, vielen Dank für eure Mühe!
hier nochmals das 3. Skript, das ich von Skript 2 Kopiert und modifiziert habe.
Es kommt auch an, allerdings genau so wie das 2. Script.
so kommt es an, also mit den ganzen Reisedaten (wie in Skript 2), obwohl diese entfernt wurden und ohne die Änderungen des Text in der Kopie für den Absender:
Vielen Dank für Ihre Anfrage.
Wir haben ihre Anfrage erhalten und werden schnellstmöglich die Verfügbarkeit prüfen.
Bitte haben Sie Verständniss, dass dies bis zu 48h dauern kann. Vielen Dank für Ihre Geduld.
Telefonische Beratung & Buchung 0681-xxxMO - FR 9:00 - 18:00 Uhr
Name: Jörg xxx
Vorname:
Straße: Av. xxx
Ort: Castell Platja d'Aro
Telefon: +34xxx
Mobil-Nr:
E-Mail: jg@xxx.es
Nachricht: dadad
Abfahrt Datum:
Rückkunft Datum:
Ferienwohnung Typ:
Anzahl Erwachsene:
Anzahl Kinder unter 15:
Reisepreis Erwachsene:
Reisepreis Kinder:
Gesamt Preis:
Mit den besten Grüßen, Ihr Team von xxx
-------------------------------------------------------------------------------------------
@Thommy: http://wandern.es/?ngp=w7e7c120e1c0957f9f86521467883204
dies ist eine Testseite.
@ Werner: http://wandern.es/?ngp=w7e7c131016197ba8786521467883204
dies ist auch eine Testseite mit neu erstelltem Formular mit "Post"
Datenschutz-rechtlich ist das eine Katastrophe, sämtliche Daten werden in der Adresszeile des Browsers angezeigt
und können in der Browser-History (oder als Lesezeichen gespeichert) wieder aufgerufen und manipuliert werden.
Da es zudem keine Https-Seiten sind, in denen die Formulare laufen, würde ich mich als Benutzer sehr unwohl fühlen.
Dies ist nur eine Testseite und wird bei Fertigstellung auf https gespielt
Nachtrag: GET verwendet man, um auf einer Seite zu navigieren oder in einem Formular für eine Suche, um Daten zu übermitteln und die Ergebnisse der Suche kann man dann in den Lesezeichen für einen späteren Aufruf speichern.
Deswegen GET, da Einträge in das Formular von einer anderen Seite kommen.
@ Thommy:
also - erstelle Deine Formulare nochmals neu mit der Methode "POST" und gut ist
habe ich hier gemacht, es kommt nicht an.
http://wandern.es/?ngp=w7e7c131016197ba8786521467883204
Nochmals vielen Dank euch beiden, viele Grüße Jörg
viele Grüße Jörg
hier nochmals das 3. Skript, das ich von Skript 2 Kopiert und modifiziert habe.
Es kommt auch an, allerdings genau so wie das 2. Script.
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 = "";
// 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@goetten.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.
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;
}
?>
so kommt es an, also mit den ganzen Reisedaten (wie in Skript 2), obwohl diese entfernt wurden und ohne die Änderungen des Text in der Kopie für den Absender:
Vielen Dank für Ihre Anfrage.
Wir haben ihre Anfrage erhalten und werden schnellstmöglich die Verfügbarkeit prüfen.
Bitte haben Sie Verständniss, dass dies bis zu 48h dauern kann. Vielen Dank für Ihre Geduld.
Telefonische Beratung & Buchung 0681-xxxMO - FR 9:00 - 18:00 Uhr
Name: Jörg xxx
Vorname:
Straße: Av. xxx
Ort: Castell Platja d'Aro
Telefon: +34xxx
Mobil-Nr:
E-Mail: jg@xxx.es
Nachricht: dadad
Abfahrt Datum:
Rückkunft Datum:
Ferienwohnung Typ:
Anzahl Erwachsene:
Anzahl Kinder unter 15:
Reisepreis Erwachsene:
Reisepreis Kinder:
Gesamt Preis:
Mit den besten Grüßen, Ihr Team von xxx
-------------------------------------------------------------------------------------------
@Thommy: http://wandern.es/?ngp=w7e7c120e1c0957f9f86521467883204
dies ist eine Testseite.
@ Werner: http://wandern.es/?ngp=w7e7c131016197ba8786521467883204
dies ist auch eine Testseite mit neu erstelltem Formular mit "Post"
Datenschutz-rechtlich ist das eine Katastrophe, sämtliche Daten werden in der Adresszeile des Browsers angezeigt
und können in der Browser-History (oder als Lesezeichen gespeichert) wieder aufgerufen und manipuliert werden.
Da es zudem keine Https-Seiten sind, in denen die Formulare laufen, würde ich mich als Benutzer sehr unwohl fühlen.
Dies ist nur eine Testseite und wird bei Fertigstellung auf https gespielt
Nachtrag: GET verwendet man, um auf einer Seite zu navigieren oder in einem Formular für eine Suche, um Daten zu übermitteln und die Ergebnisse der Suche kann man dann in den Lesezeichen für einen späteren Aufruf speichern.
Deswegen GET, da Einträge in das Formular von einer anderen Seite kommen.
@ Thommy:
also - erstelle Deine Formulare nochmals neu mit der Methode "POST" und gut ist
habe ich hier gemacht, es kommt nicht an.
http://wandern.es/?ngp=w7e7c131016197ba8786521467883204
Nochmals vielen Dank euch beiden, viele Grüße Jörg
viele Grüße Jörg
Beste Grüße aus Spanien,
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
- Tommy Herrmann
- Site Admin
- Beiträge: 5921
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Kontaktformular
Warum postest Du nun nochmals die mit der Methode "GET" erstellten Formulare?
Das hatte doch Werner gerade erst erklärt.
Vielleicht wird das Formular überhaupt nicht übernommen, da es für die Methode "GET" viel zu groß ist. Ich habe mit "GET" nie bei E-Mail-Formularen gearbeitet. Ich würde den Rat vom Werner berücksichtigen und hier "POST" verwenden.
Setze doch bitte Code in Deinen Beiträgen auch in den dazugehörigen "BBCode" für Code, denn sonst werden solche Beiträge fast unlesbar:
Das hatte doch Werner gerade erst erklärt.
Vielleicht wird das Formular überhaupt nicht übernommen, da es für die Methode "GET" viel zu groß ist. Ich habe mit "GET" nie bei E-Mail-Formularen gearbeitet. Ich würde den Rat vom Werner berücksichtigen und hier "POST" verwenden.
Setze doch bitte Code in Deinen Beiträgen auch in den dazugehörigen "BBCode" für Code, denn sonst werden solche Beiträge fast unlesbar:
Code: Alles auswählen
[code]hier steht der Code im BBCode-Tag - ohne das Leerzeichen im schließenden Tag[/ code]
- Tommy Herrmann
- Site Admin
- Beiträge: 5921
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Kontaktformular
Ich weiß im Moment nicht, warum Deine Formulare nicht ankommen. Vielleicht hat Werner eine Idee.
Die Empfänger-E-Mail Adresse muss bei Deinem Anbieter (Provider) auch registriert sein, sonst wird Dein Provider diese nicht durchlassen (Spamschutz)!
Hast Du das Formular auch schon mal über einen anderen Browser versendet, das solltest Du dann auch mal testen.
Ich würde auch mal als erstes Dein Formular so testen, wie es von Werners "Formular Generator" generiert worden ist. Also lediglich die beim Provider registrierte E-Mail Adresse einsetzen und dann - vor dem Einbau in die Webseite - testen. Das hatte ich mit Deinem ersten Formular (ganz oben) getan und das funktionierte (auch mit GET) bei mir einwandfrei. Die E-Mails kamen auch sogleich bei mir an.
Verwendest Du hier das CMS von "TYPO3" oder was ist das - kenne mich damit leider nicht aus. Vielleicht hat das auch alles was mit diesem CMS zu tun. Hast Du dort schon mal nachgefragt?
Die Empfänger-E-Mail Adresse muss bei Deinem Anbieter (Provider) auch registriert sein, sonst wird Dein Provider diese nicht durchlassen (Spamschutz)!
Hast Du das Formular auch schon mal über einen anderen Browser versendet, das solltest Du dann auch mal testen.
Ich würde auch mal als erstes Dein Formular so testen, wie es von Werners "Formular Generator" generiert worden ist. Also lediglich die beim Provider registrierte E-Mail Adresse einsetzen und dann - vor dem Einbau in die Webseite - testen. Das hatte ich mit Deinem ersten Formular (ganz oben) getan und das funktionierte (auch mit GET) bei mir einwandfrei. Die E-Mails kamen auch sogleich bei mir an.
Verwendest Du hier das CMS von "TYPO3" oder was ist das - kenne mich damit leider nicht aus. Vielleicht hat das auch alles was mit diesem CMS zu tun. Hast Du dort schon mal nachgefragt?
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Kontaktformular
Ändere im 3 Script, mal den Betreff in:
Code: Alles auswählen
$betreff = "Anfrage-Formular-Onlinerechner -FORM3-"; // Betreff
Schaue in deinem Posteingang nach, da muss dann eine Nachricht (Kopfzeile) mit "Anfrage-Formular-Onlinerechner -FORM3-" erscheinen!
Werner
https://werner-zenk.de
https://werner-zenk.de
-
- Mitglied (Level 3)
- Beiträge: 20
- Registriert: Mo 3. Okt 2022, 15:12
- Wohnort: Calonge, Spanien
- Kontaktdaten:
Re: Kontaktformular
Hallo,
entschuldige, dass ich mich jetzt erst melde.
Erst mal wünsche ich euch ein frohes neues Jahr.
Ich habe die Zeile, wie von dir beschrieben eingefügt.
Das Formular kommt mit dem Betreff "Anfrage-Formular-Onlinerechner" an, also ohne -FORM3-
Viele Grüße
entschuldige, dass ich mich jetzt erst melde.
Erst mal wünsche ich euch ein frohes neues Jahr.
Ich habe die Zeile, wie von dir beschrieben eingefügt.
Das Formular kommt mit dem Betreff "Anfrage-Formular-Onlinerechner" an, also ohne -FORM3-
Viele Grüße
Beste Grüße aus Spanien,
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
Jörg
www.playa-busreisen.com
www.wandern-costa-brava.com
www.playadearo.de
www.goetten.es
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste