Kontaktformular mit Bestätigungsmail?

Allgemeine Fragen
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 7758
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Tommy Herrmann »

Moin,

viele dieser Personen stellen eigentlich keine Fragen, sondern äußern eher Beschwerden, weil sie überzeugt sind, alles richtig zu machen.

Wenn man ihnen erklärt, wie es richtig wäre, glauben sie es oft nicht oder sind der Meinung, dass der Fehler bei Mobirise liegen muss. Manchmal lesen sie daher die Antworten nicht einmal.

Das Hersteller-Forum zieht jedoch auch die unerfahrensten Laien an, die man sich nur vorstellen kann. So etwas habe ich in keinem anderen Forum erlebt.
Benutzeravatar
dettec61
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 255
Registriert: Di 30. Mär 2021, 09:41
Wohnort: Siegerland

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von dettec61 »

Moin Tommy,
Tommy Herrmann hat geschrieben: Mi 26. Feb 2025, 03:55
Ich verwende immer den kostenlosen Editor "Notepad ++", den kannst Du auch auf Deutsch umstellen:

https://notepad-plus-plus.org/

Enthält der PHP-Code einen Syntax-Fehler kann der PHP-Parser den Code nicht interpretieren und stellt die Arbeit ein.
Lies mal hier was ein Parse-Fehler ist:

https://www.ionos.de/hilfe/hosting/prob ... rse-error/
ich nutze auch seit Ewigkeiten Notepad++ wie auch in diesem Fall. Das mit dem Parse Fehler hatte ich mir schon durchgelesen, finde aber nix - oder bin blind...

Die Testseite befindet sich hier:
https://www.kreuztalertanzclub-casino.d ... kttest.php
Grüssle
Detlev
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 7758
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Tommy Herrmann »

Das ist die Fehlermeldung:

Code: Alles auswählen

Parse error: syntax error, unexpected identifier "webmaster" in /customers/e/c/6/kreuztalertanzclub-casino.de/httpd.www/mailscript.php on line 61

Kopiere doch bitte mal das gesamte Skript "mailscript.php" hier in das Forum, damit man das prüfen kann.

Am besten Du markierst dann das gesamte Skript mit der Maus und stellst es im Editor auch als Code dar, indem Du nach dem Markieren oben in der Werkzeugleiste des Forum-Editors auf dieses Symbol für Code klickst:

</>

Irgendwas stimmt mit dem Teil der Mailadresse nicht bzw. am Syntax dieser Zeile 61.


Für weitere Helfer: So sieht das noch unveränderte Original-Skript aus:

Code: Alles auswählen

<?php
/*
 * mailscript.php versenden über SMTP
 * Version vom 21.07.2021
 * 
 * Erfolgreich getestet mit: PHPMailer Version: 6.5.0
 */

// PHPMailer einbinden
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

require "PHPMailer-master/src/Exception.php";
require "PHPMailer-master/src/PHPMailer.php";
require "PHPMailer-master/src/SMTP.php";

// Danke und Fehlerseite
$dankeSeite = "danke.html"; // Danke - Seite, die Mail wurde erfolgreich versandt.
$fehlerSeite = "fehler.html"; // Fehler - Seite, falls die Mail nicht versandt werden konnte.

// Betreff
// Jede E-Mail benötigt einen Betreff, da jedoch im Formular kein
// entsprechendes Feld gesetzt wurde, wird ein fester Betreff hinzugefügt.
$betreffEmail = "Kontaktformular Homepage";


// Wurden POST-Daten gesendet?
if ($_SERVER["REQUEST_METHOD"] == "POST") {

  // Zeitzone und das aktuelle Datum setzen
  date_default_timezone_set("Europe/Berlin");
  $datum = date("d.m.Y H:i");

  // HTML-Tags entfernen
  $_POST = array_map('strip_tags', $_POST);

  // Inhalt der E-Mail setzen
  $inhaltEmail = "Gesendet am: $datum Uhr
   Name: " . $_POST["name"] . "
   E-Mail: " . $_POST["email"] . "
   Phone: " . $_POST["phone"] . "

   Nachricht: " . $_POST["message"] . "
  ";

  // Instanz und Zeichenkodierung setzen
  $mail = new PHPMailer();
  $mail->CharSet = "UTF-8";

  // Servereinstellungen
  $mail->isSMTP(); // Senden mit SMTP
  $mail->Host = "smtp.ionos.de"; // Postausgangsserver (SMTP)
  $mail->SMTPAuth = true; // SMTP-Authentifizierung aktivieren
  $mail->Username = "mail@example.com"; // SMTP Benutzername
  $mail->Password = "***********"; // SMTP Passwort
  $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // Implizite TLS-Verschlüsselung aktivieren
  $mail->Port = 465; // Port - Postausgangsserver (SMTP)

 // Absender und Empfänger
 $mail->setFrom("mail@example.com", "John Doe"); // Absender
 $mail->addAddress("jane@outlook.com", "Jane Foo"); // Empfänger

  // Betreff und Body setzen
  $mail->Subject = $betreffEmail;
  $mail->Body = $inhaltEmail;

 // E-Mail versenden
 if ($mail->Send()) {
  header("Location: " . $dankeSeite);
 }
 else {
  header("Location: " . $fehlerSeite);
 }
}
?>

Dies ist Zeile 61:

Code: Alles auswählen

 $mail->setFrom("mail@example.com", "John Doe"); // Absender
Benutzeravatar
dettec61
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 255
Registriert: Di 30. Mär 2021, 09:41
Wohnort: Siegerland

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von dettec61 »

Code: Alles auswählen

<?php
/*
 * mailscript.php versenden über SMTP
 * Version vom 21.07.2021
 * 
 * Erfolgreich getestet mit: PHPMailer Version: 6.5.0
 */

// PHPMailer einbinden
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

require "PHPMailer-master/src/Exception.php";
require "PHPMailer-master/src/PHPMailer.php";
require "PHPMailer-master/src/SMTP.php";

// Danke und Fehlerseite
$dankeSeite = "danke.html"; // Danke - Seite, die Mail wurde erfolgreich versandt.
$fehlerSeite = "fehler.html"; // Fehler - Seite, falls die Mail nicht versandt werden konnte.

// Betreff
// Jede E-Mail benötigt einen Betreff, da jedoch im Formular kein
// entsprechendes Feld gesetzt wurde, wird ein fester Betreff hinzugefügt.
$betreffEmail = "Kontaktformular Homepage KTC";


// Wurden POST-Daten gesendet?
if ($_SERVER["REQUEST_METHOD"] == "POST") {

  // Zeitzone und das aktuelle Datum setzen
  date_default_timezone_set("Europe/Berlin");
  $datum = date("d.m.Y H:i");

  // HTML-Tags entfernen
  $_POST = array_map('strip_tags', $_POST);

  // Inhalt der E-Mail setzen
  $inhaltEmail = "Gesendet am: $datum Uhr
   Vorname: " . $_POST["vorname"] . "
   Nachname: " . $_POST["nachname"] . "
   E-Mail: " . $_POST["email1"] . "
   Phone: " . $_POST["phone"] . "

   Nachricht: " . $_POST["textarea"] . "
  ";

  // Instanz und Zeichenkodierung setzen
  $mail = new PHPMailer();
  $mail->CharSet = "UTF-8";

  // Servereinstellungen
  $mail->isSMTP(); // Senden mit SMTP
  $mail->Host = "send.one.com"; // Postausgangsserver (SMTP)
  $mail->SMTPAuth = true; // SMTP-Authentifizierung aktivieren
  $mail->Username = "wxxxxx@kreuztalertanzclub-casino.de"; // SMTP Benutzername
  $mail->Password = "wxxxxx; // SMTP Passwort
  $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // Implizite TLS-Verschlüsselung aktivieren
  $mail->Port = 465; // Port - Postausgangsserver (SMTP)

 // Absender und Empfänger
 $mail->setFrom("webmaster@kreuztalertanzclub-casino.de", "John Doe"); // Absender
 $mail->addAddress("webmaster@kreuztalertanzclub-casino.de", "Jane Foo"); // Empfänger

  // Betreff und Body setzen
  $mail->Subject = $betreffEmail;
  $mail->Body = $inhaltEmail;

 // E-Mail versenden
 if ($mail->Send()) {
  header("Location: " . $dankeSeite);
 }
 else {
  header("Location: " . $fehlerSeite);
 }
}
?>
Grüssle
Detlev
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 7758
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Tommy Herrmann »

Ja - sieht alles richtig aus.

Die E-Mail Adresse existiert auch bei Deinem Provider oder?

Diese muss dort angelegt sein und existieren.

Hast Du dort noch eine andere E-Mail Adresse angelegt, dann probiere diese mal im Skript.
Benutzeravatar
dettec61
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 255
Registriert: Di 30. Mär 2021, 09:41
Wohnort: Siegerland

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von dettec61 »

Ja, die Adresse ist angelegt.
Als SMTP-Adresse, welche ausge Xt ist, habe ich aber extra eine Extra-Adresse angelegt.
Und auch jetzt gerade noch mal getestet und funktioniert, genau wie die webmaster-Adresse.

Bei one.com steht zwar das man imap nutzen soll, aber auch auf Hilfe-Seiten die smtp-Daten... Nicht das da was faul ist?
Grüssle
Detlev
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 7758
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Tommy Herrmann »

Sorry,

war gerade einkaufen.

Du - leider fehlt mir da gerade jede Idee :confused:

Das liegt dann wohl in irgendeiner Form an den PHP Einstellungen von Deinem Provider. Das Skript läuft ja tausendfach bei anderen auch?!



Du könntest dann, wie vom Frank (stobi_de) vorgeschlagen, vielleicht das Skript vom Drittanbieter "Witsec" ausprobieren:

https://witsec.nl/extension-mailform.html

... wobei ich Dir dabei nicht helfen kann, da ich es nie ausprobiert habe. Sicherlich könnte Frank dann helfen.



Was ich auch sehr gerne verwende ist das Programm von "Arclab", einer deutschen Firma, was ohnehin meine bevorzugte Empfehlung wäre und das ich als Standard verwende. Die haben auch einen super guten Support:

https://www.mobirise-tutorials.com/Formular/

Die "Light" Version für einmalig 49,00 EUR würde Dir reichen:

https://www.arclab.com/de/webformular-g ... llung.html

Ich glaube, dass man das auch kostenlos erst einmal testen kann.



... oder auch das kostenlose CMS von "PHP Jabbers" - aber gar kein Support oder wahnsinnig teuer:

https://www.mobirise-tutorials.com/News ... ntact.html
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Du verwendest ja unterschiedliche E-Mailadressen im Script.
Webmaster kennt er nicht, weil oben eine andere angegeben ist - oder ?
Gruß Volker
Benutzeravatar
dettec61
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 255
Registriert: Di 30. Mär 2021, 09:41
Wohnort: Siegerland

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von dettec61 »

Ja, ich habe eine Mailadresse zum einloggen und versenden, und die "webmaster" zum Anzeigen.
Oder verstehe ich da was falsch?
Bin auf der Arbeit und kann das erst morgen früh umstellen.
Grüssle
Detlev
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 7758
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Tommy Herrmann »

Ich weiß jetzt nicht genau was Du meinst.

Es muss natürlich die Mail-Adresse zum Versenden sein, also die Mailadresse, die Du anderen gibst, damit sie Dir eine E-Mail senden können.

Bitte verwende überall die gleichen E-Mail-Adresse, also die, die Du auch in den SMTP-Servereinstellungen (oben) eingetragen hast.

Ich hätte jetzt angenommen, dass diese gleich sind.
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Detlev Du bist ein lustiger Vogel :angst:

Du kannst doch nicht allen ernstes erwarten das das Script sowas zulässt.

Oben schreibst Du xxxxx@kreuztalertanzclub-casino.de

und unten yyyyyy@kreuztalertanzclub-casino.de

Steht aber auch eindeutig in der Fehlermeldung das er Webmaster nicht kennt ;)

unexpected identifier

:D :D :D :D :D :D :D :D
Gruß Volker
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Meiner Meinung nach ist für alle Laien und die, die nur wenige Formularfelder übertragen wollen, das mailscript am besten geeignet.

1. Grund: Es funktioniert mit den Mobirise Formularen (Mit ALLEN!)
2. Grund: Keinerlei Kosten für Arclab oder ähnliches Produkt
3. Grund: Einfach einzubauen in bestehende Projekte ohne auf PHP umzustellen oder Javascript einzubinden usw.
4. Grund: Durch die Änderungen am Script jetzt auch vollumfänglich zu gebrauchen ( Antworten in Outlook z.B.)

Wer natürlich PDF, Unterschriftfeld mehrseitige Formulare usw. braucht, der wird was anderes nehmen müssen. Obwohl ich denke, das man PDF und Unterschrift auch mit Hilfe von KI da einbauen könnte. :D
Gruß Volker
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 7758
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Tommy Herrmann »

Volker,

ich denke die "x" stehen nur stellvertretend für Einstellungen, die er mit Recht nicht öffentlich darstellen will.

Übrigens alles, was Du da an zusätzlichen Optionen schreibst, kann "Arclab". Das ist mit Sicherheit eine der besten, wenn nicht die Allerbeste, Software für Formulare.

Das kann eine KI in 100 Jahren noch nicht leisten :anmachen:
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Tommy Herrmann hat geschrieben: Mi 26. Feb 2025, 16:36 Volker,

ich denke die "x" stehen nur stellvertretend für Einstellungen, die er mit Recht nicht öffentlich darstellen will.
NEIN !
Er hat unterschiedliche E-Mailadressen (schreibt er doch auch )
Die Fehlermeldung ist glasklar Tommy

Er meldet sich oben bei SMTP mit : $mail->Username = "wxxxxx@kreuztalertanzclub-casino.de"; // SMTP Benutzername an.

und unten will er mit $mail->setFrom("webmaster@kreuztalertanzclub-casino.de", "John Doe"); // Absender
$mail->addAddress("webmaster@kreuztalertanzclub-casino.de", "Jane Foo"); // Empfänger

senden und empfangen.

Wie soll das gehen Tommy ?

Und oben die xxxxxx heißen bestimmt nicht webmaster :D
Gruß Volker
Benutzeravatar
vloppy
Mitglied (Level 9)
Mitglied (Level 9)
Beiträge: 85
Registriert: Fr 11. Dez 2020, 11:34
Wohnort: Kempen

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von vloppy »

Um die Diskussionen mal ein wenig zu bremsen. Ich habe unsere Kleinunternehmen aufgegeben, aber immer noch die Developerlizenz von ARCLAB und wäre bereit ein Formular mit den gewünschten Bedingungen zu machen - kostenlos.

LG Vloppy und möge der anstehende Karneval anschlagsfrei verlaufen, ebenso die nächsten Jahrzehnte. Helau
Benutzeravatar
dettec61
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 255
Registriert: Di 30. Mär 2021, 09:41
Wohnort: Siegerland

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von dettec61 »

Volker hat geschrieben: Mi 26. Feb 2025, 15:51 Detlev Du bist ein lustiger Vogel :angst:

Du kannst doch nicht allen ernstes erwarten das das Script sowas zulässt.

Oben schreibst Du xxxxx@kreuztalertanzclub-casino.de

und unten yyyyyy@kreuztalertanzclub-casino.de

Steht aber auch eindeutig in der Fehlermeldung das er Webmaster nicht kennt ;)

unexpected identifier

:D :D :D :D :D :D :D :D
Danke, "Unwissende" machen halt schon mal lustige Dinge in Augen von "Wissenden" ;-)
Ich bin davon ausgegangen das ich für das Versenden eine x-beliebige gültig Mailadresse nehmen kann, da ansonsten in php (und auch in anderen Codes) für wiederkehrende Dinge wie hier immer ein Platzhalter benutzt wird - weil man nur an einer Stelle ändern braucht und damit sicher ist. DAS war aber hier nicht der Fall - kein Platzhalter. Also bin ich davon ausgegangen das man ein Webadresse zum versenden braucht und FROM/TO frei wählbar ist. Hörte sich für mich sogar sicherer an..
Gut, vermutlich nicht...
Jetzt habe ich überall die webmaster-Adresse drin. Sogar mehrfach geprüft ob auch das PW stimmt, Adresse stimmt.
Extra nochmal kopiert statt mit Hand eingetragen und und und...
10 Versuche später:
Es klappt trotz gleichlautender Adresse nicht. Adresse stimmt, Passwort stimmt : Gleiche Fehlermeldung!
Wat nu, du lustiger Vogel ;)

Update: Es geht... Infos folgen!
Grüssle
Detlev
Benutzeravatar
dettec61
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 255
Registriert: Di 30. Mär 2021, 09:41
Wohnort: Siegerland

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von dettec61 »

So, hier nun die Auflösung:
Unterschiedliche Mailadressen für das Login und für From/To gehen wirklich nicht, ABER; dann kommt die Fehlerseite und nicht der prase Fehler von php.
Habe ich gerade extra noch mal getestet.
Es lag, ähem, öh, tja..... am fehlenden Anführungszeichen (") hinter dem Passwort im PHP-Code ausser eben dem gleichhalten der Adressen.
Also - sry für die Unanehmlichkeiten...
Als Entschuldigung; ich bin dieses "coden" nicht gewohnt. Auch an die Seite gehe ich nur mal ins "Eingemachte" wenn sich Probleme auftun, wie gerade diesmal.
Ich kann mich nur Bedanken an ALLE, die versucht haben zu helfen. Letztendlich hat jeder seinen Teil dazu beigetragen, auch die mich an sozusagene externe Lösungen ranführen wollten.
Letzteres hält mich nur deswegen davon ab, da ich irgendwann mal die Website wegen "Alter" abgeben muss und es dann für die Nachfolger vielleicht um so schwieriger wird.
Immer wieder tolle Truppe hier, auch wenn ich euch nerve! Danke!
Grüssle
Detlev
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Ich bekomme aber leider keine Mail :(
Gruß Volker
Benutzeravatar
dettec61
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 255
Registriert: Di 30. Mär 2021, 09:41
Wohnort: Siegerland

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von dettec61 »

Jetzt ja, beim Original Formular.. War ja noch in Umstellung.
Glaub mir es funktioniert.
Ich werde es gerne morgen nochmal als Testumgebung einfügen, sonst bekommt unser Bearbeiter haufenweise Mails...
:D :D :D
Grüssle
Detlev
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 7758
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Tommy Herrmann »

Moin,

na bestens - Glückwunsch :tu:

... und so haben wir alle mit dem Codieren begonnen. Da macht man ganz schnell mal Fehler. Das passiert Dir dann wahrscheinlich kein zweites Mal. Nur so lernt man.

Übrigens auch mein Fehler - genau das war ja der Grund, warum Du mal den gesamten Code posten solltest. Dennoch habe ich die fehlenden, schließenden Hochstriche auch übersehen, obwohl ich genau danach gesucht hatte.

Hier fehlen die schließenden Hochstriche:

Code: Alles auswählen

$mail->Password = "wxxxxx; // SMTP Passwort
so wäre es richtig:

Code: Alles auswählen

$mail->Password = "wxxxxx"; // SMTP Passwort
Bei SMTP (Simple Mail Transfer Protocol) gibt es immer ein Passwort passend zum Benutzernamen des Absenders. Der "Benutzername" ist nicht zwingend eine E-Mail-Adresse, das ist bei manchen Providern eine andere Kennung. Das macht SMTP viel sicherer als normale PHP-Mail. So wird verhindert, dass beispielsweise Spammer Deine Absender-Mail-Adresse missbrauchen, um das Vertrauen in den Absender auszunutzen.

https://www.ionos.de/hilfe/e-mail/gloss ... aert/smtp/



ACHTUNG!

Dieser, zweite Eintrag, der "Empfänger" E-Mail Adresse:

Code: Alles auswählen

$mail->addAddress("jane@outlook.com", "Jane Foo"); // Empfänger
... kann dagegen eine x-beliebige Mail-Adresse sein. Die kann auch von einer anderen Domain sein. Die dort eingetragene E-Mail Adresse empfängt dann auch die Mail vom Formular. Du kannst also die Mails, die über dieses Formular vom Verein gesendet werden, an einen ausgewählten Empfänger senden lassen.
Antworten

Wer ist online?

Mitglieder in diesem Forum: Ahrefs [Bot], Amazon [Bot], Bing [Bot] und 3 Gäste