Kontaktformular mit Bestätigungsmail?

Allgemeine Fragen
Benutzeravatar
dettec61
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 255
Registriert: Di 30. Mär 2021, 09:41
Wohnort: Siegerland

Kontaktformular mit Bestätigungsmail?

Beitrag von dettec61 »

Hallo!
Wir benutzen auf https://www.kreuztalertanzclub-casino.de/kontakt.html ein einfaches Kontaktformular.
Ich weiß schon gar nicht mehr wie ich es eingebunden habe und woher es stammt. Es ist wohl kein Mobirise-Block.
Es fehlt leider ein wichtiges Detail an dem Formular, und zwar das der Versender eine Bestätigungsmail erhält mit dem Textarea-Inhalt.
Zur Zeit geht die Mail an die Info-Adresse des Tanzclubs, es würde schon reichen wenn die Mail zusätzlich an die eingetragene Mail-Adresse geht ohne weitere Formatierungen.
Kann mir da jemand helfen das anzupassen?

Vielen Dank!
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 »

Hallo Detlev,

also um helfen zu können, reicht die Info so natürlich nicht. Man müsste schon ganz genau das Formular kennen (Code), sonst ist es natürlich vollkommen unmöglich zu helfen.

Ich kenn mich mit dem Formular-Generatoren vom "Werner Zenk":

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

… oder auch von dem hervorragenden Programm von "Arclab" recht gut aus:

https://www.mobirise-tutorials.com/Form ... rclab.html

Bei beiden ist das sehr einfach realisierbar.

Heute kann ich allerdings nicht mehr helfen.
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 »

… gerade erst Deinen Link gesehen. Das ist das Formular von Mobirise. Damit geht das nicht.

Man hat auf dieses Formular keinen Einfluss, da der Formular-Inhalt via HTML "POST" an den Mail-Service von "Formoid" gesendet wird und erst dort über PHP überhaupt als E-Mail verarbeitet wird.
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Alternativ kannst Du dieses Formular mit dem Formbuilder öffnen und bei Action URL das Mailscript eintragen, welches Du hier findest : https://www.mobirise-tutorials.com/Kontakt-Formular.php
form1.png
Dann kannst Du dort z.B. auf eine Bestätigungsseite weiterleiten, damit der Mailschreiber sieht das seine Mail versendet wurde. Mann könnte dort auch den Mailtext wiedergeben, wenns gebraucht wird ;)

Ich habe mal ChatGPT gebeten das Mailscript anzupassen und eine Kopie an den Absender zu senden.
Ist einfach Genial, die KI hat mir noch folgende Dinge eingebaut :
Was wurde geändert?
✅ Absender bekommt eine Kopie
✅ E-Mail wird validiert (verhindert ungültige Adressen)
✅ htmlspecialchars() gegen XSS-Angriffe
✅ Falls BCC statt CC gewünscht ist, einfach ändern

Hier der Code:

Code: Alles auswählen

<?php

/*
 * mailscript.php
 * Version vom 22.02.2025 (von KI überarbeitet)
 * 
 * Erfolgreich getestet mit: PHPMailer Version: 6.4.0
 */

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

require __DIR__ . '/PHPMailer-master/src/Exception.php';
require __DIR__ . '/PHPMailer-master/src/PHPMailer.php';

// Empfänger
$empfaengerName = "Dein Name"; // Name des Empfängers
$empfaengerEmail = "Deine Email Adresse"; // E-Mail des Empfängers
$dankeSeite = "danke.php"; // Danke-Seite
$fehlerSeite = "fehler.html"; // Fehler-Seite

$betreffEmail = "Kontaktformular Homepage";

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

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

    // Eingaben bereinigen
    $name = htmlspecialchars(strip_tags($_POST["name"] ?? ""));
    $email = filter_var($_POST["email"] ?? "", FILTER_VALIDATE_EMAIL);
    $phone = htmlspecialchars(strip_tags($_POST["phone"] ?? ""));
    $message = htmlspecialchars(strip_tags($_POST["message"] ?? ""));

    if (!$email) {
        header("Location: " . $fehlerSeite);
        exit;
    }

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

    Nachricht: $message
    ";

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

    // Absender und Empfänger setzen
    $mail->setFrom($email, $name);
    $mail->addAddress($empfaengerEmail, $empfaengerName);

    // Der Absender erhält eine Kopie
    $mail->addCC($email); // Falls BCC gewünscht: $mail->addBCC($email);

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

    // E-Mail versenden
    if ($mail->send()) {
        header("Location: " . $dankeSeite);
    } else {
        header("Location: " . $fehlerSeite);
    }
}
?>
Kann hier getestet werden ( original Mobirse Formular ) nur geändert auf mailscript.php

https://niederastroth.de/demokontakt/

Wichtig !!! Die Formularfelder müssen so beschriftet sein wie im mailscript.php, bzw. müssen übereinstimmen.

also z.B.
$name = htmlspecialchars(strip_tags($_POST["name"] ?? ""));
$email = filter_var($_POST["email"] ?? "", FILTER_VALIDATE_EMAIL);
$phone = htmlspecialchars(strip_tags($_POST["phone"] ?? ""));
$message = htmlspecialchars(strip_tags($_POST["message"] ?? ""));

Du kannst natürlich auch beliebig viele Felder hinzufügen
Gruß Volker
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Und hier eine Version die eine Mail an den Absender sendet und auf der Danke Seite nochmals die Mail anzeigt:

Code: Alles auswählen

<?php

/*
 * mailscript.php
 * Version vom 22.02.2025 (von KI überarbeitet)
 * Mit Mailanzeige auf der Danke Seite
 */

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require __DIR__ . '/PHPMailer-master/src/Exception.php';
require __DIR__ . '/PHPMailer-master/src/PHPMailer.php';

session_start(); // Session starten für Danke-Seite

// Empfänger-Daten
$empfaengerName = "Dein Name";
$empfaengerEmail = "Deine E-Mailadresse";
$dankeSeite = "danke.php";
$fehlerSeite = "fehler.html";
$betreffEmail = "Kontaktformular Homepage";

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

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

    // Eingaben bereinigen
    $name = htmlspecialchars(strip_tags($_POST["name"] ?? ""));
    $email = filter_var($_POST["email"] ?? "", FILTER_VALIDATE_EMAIL);
    $phone = htmlspecialchars(strip_tags($_POST["phone"] ?? ""));
    $message = htmlspecialchars(strip_tags($_POST["message"] ?? ""));

    if (!$email) {
        header("Location: " . $fehlerSeite);
        exit;
    }

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

    Nachricht: $message
    ";

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

    // Fester Absender (damit es nicht blockiert wird)
    $mail->setFrom("no-reply@deine-domain.de", "Webseite Kontaktformular");
    $mail->addReplyTo($email, $name); // Antwort an den Absender ermöglichen

    // Empfänger setzen
    $mail->addAddress($empfaengerEmail, $empfaengerName);

    // Der Absender bekommt eine Kopie
    $mail->addCC($email); // Falls BCC gewünscht: $mail->addBCC($email);

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

    // E-Mail versenden
    if ($mail->send()) {
        // Daten für die Danke-Seite speichern
        $_SESSION['name'] = $name;
        $_SESSION['email'] = $email;
        $_SESSION['phone'] = $phone;
        $_SESSION['message'] = $message;

        header("Location: " . $dankeSeite);
        exit;
    } else {
        error_log("Mail-Fehler: " . $mail->ErrorInfo);
        header("Location: " . $fehlerSeite);
        exit;
    }
}
?>
Die Version ist jetzt online bei mir


Du kannst die Action natürlich auch direkt im Formular ändern, aber im Builder kannst du eben auch die Feldnamen ändern ;)
form2.png

Der lieben Ordnung halber :D

Hier noch die Änderung, damit auch bei Outlook bei Antworten die Absender E-Mail genommen wird und nicht die eigene.

Code: Alles auswählen

// "Antworten an" den Absender der Nachricht setzen
$mail->addReplyTo($email, $name);
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 »

Moin Volker,

na, da hast du dir ja richtig viel Arbeit gemacht :tu:

... denkt aber daran, dass auch die künstliche Intelligenz "ChatGPT" gerne mal Fehler macht. Man darf sich auf die Skripte nicht blind verlassen.

Ich habe Dein Formular auf Deiner Seite getestet und auch eine Bestätigungsmail erhalten :cool:


P.S.:

Ich habe das mal jetzt genauer angesehen und Du könntest natürlich auch gleich die POST-Variablen einsetzen anstatt nochmals Variablen zu gründen - also dann nur diese beiden Anweisungen noch im Skript hinzufügen:

Code: Alles auswählen

  // Der Absender bekommt eine Kopie als `Carbon Copy`
  $mail->addCC($_POST["email"]); // Falls BCC gewünscht: $mail->addBCC($_POST["email"]);
  
  // "Antworten an" den Absender der Nachricht setzen
  $mail->addReplyTo($_POST["email"], $_POST["name"]);
Ich habe das jetzt auch in meinem Mobirise-Formularblock mal beispielhaft so mit eingebaut:

https://www.mobirise-tutorials.com/Kont ... p#Formular


Eigentlich entfernt bereits diese Zeile im Original-Skript mit "strip_tags" eventuelle HTML-Tags:

Code: Alles auswählen

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

... wobei "htmlspecialchars" - wie von ChatGPT verwendet - da wahrscheinlich noch besser ist. Ich glaube allerdings, dass XSS-Angriffe schon durch die Scripts vom "PHP Mailer" selbst unterbunden werden.
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 »

Ich danke euch!
Ich werde mich gleich mal ran machen und auch eine Testseite erstellen.
Ich hoffe ich bekomme das hin. :cool:
Rückmeldung folgt!
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 »

Volker hat geschrieben: Sa 22. Feb 2025, 22:38 Und hier eine Version die eine Mail an den Absender sendet und auf der Danke Seite nochmals die Mail anzeigt:
Hallo Volker,
und da isser wieder - der doofe dettec, also ich.
Ich habe mir jetzt die Kontaktseite kopiert und als .php übertragen.

Aber wo genau der Code hin soll?
Ich hatte den den vermeintlichen Code des alten Formbuilders entfernt, da deinen Code eingefügt, da war die Seite komplett zerissen. Karte von google maps verschwunden, das Bild für den restlichen Kontakt war auch weg.
Bin einfach zu doof dafür...
Grüssle
Detlev
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Du musst lediglich bei deinem vorhandenen Formular die Action ändern.
Siehe Screenshot
form2.png
Das wars in Mobirise fast schon. Wenn Du auf eine Dankeseite nach Absenden verweisen willst, musst du diese natürlich auch erstellen ( mit Mobirise )

Dann musst Du das mailscript hier als mailscript.php speichern und natürlich auch den PHPmailer auf deinen Server kopieren.

Sieht dann auf deinem Server so aus wie hier im Beispiel:
ftp1.png
Natürlich muss Du im mailscript.php Deinen Namen und Deine E-Mailadresse angeben.
Gruß Volker
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Wenn die Dankeseite den Mailinhalt zeigen soll ( wie bei mir ) dann musst Du die dankeseite als PHP Seite speichern und folgenden Code dort in einem Textblock einfügen:

Code: Alles auswählen

 <?php
session_start();
if (!isset($_SESSION['name'])) {
    echo "Es wurden keine Daten übermittelt.";
    exit;
}
?>

<h2>Vielen Dank für deine Nachricht, <?php echo htmlspecialchars($_SESSION['name']); ?>!</h2>
<p><strong>E-Mail:</strong> <?php echo htmlspecialchars($_SESSION['email']); ?></p>
<p><strong>Telefon:</strong> <?php echo htmlspecialchars($_SESSION['phone']); ?></p>
<p><strong>Nachricht:</strong><br><?php echo nl2br(htmlspecialchars($_SESSION['message'])); ?></p>

<?php session_destroy(); // Session leeren ?>
Gruß Volker
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

Schau im Video, genau so muss man das machen ;)

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 »

Volker hat geschrieben: So 23. Feb 2025, 17:43 Du musst lediglich bei deinem vorhandenen Formular die Action ändern.
Siehe Screenshot

form2.png

Das wars in Mobirise fast schon. Wenn Du auf eine Dankeseite nach Absenden verweisen willst, musst du diese natürlich auch erstellen ( mit Mobirise )

Dann musst Du das mailscript hier als mailscript.php speichern und natürlich auch den PHPmailer auf deinen Server kopieren.

Sieht dann auf deinem Server so aus wie hier im Beispiel:

ftp1.png

Natürlich muss Du im mailscript.php Deinen Namen und Deine E-Mailadresse angeben.
Also verstehe ich richtig, das dann der Mailer die Daten an das Script übergibt und das Script macht dann alles weitere?
Ich hoffe, ich habe mich richtig ausgedrückt?
Dadurch das ich die Action ändere, entfällt ja die Standardadresse wo die Mail ja hin soll?
Ziel soll es ja sein die Mail an den Bearbeitenden zu senden und als Kopie an den der das Formular erfasst hat.

Ich werde echt zu alt für das Zeug, bzw. habe zu viel in der Birne...
Grüssle
Detlev
Volker
Moderator
Moderator
Beiträge: 1431
Registriert: Sa 12. Dez 2020, 22:35

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von Volker »

dettec61 hat geschrieben: So 23. Feb 2025, 17:53
Also verstehe ich richtig, das dann der Mailer die Daten an das Script übergibt und das Script macht dann alles weitere?
Ich hoffe, ich habe mich richtig ausgedrückt?
Genau so ist es. Die Formulareingaben gehen anstelle über Mobirise, über das Mailscript.
dettec61 hat geschrieben: So 23. Feb 2025, 17:53
Dadurch das ich die Action ändere, entfällt ja die Standardadresse wo die Mail ja hin soll?
Ziel soll es ja sein die Mail an den Bearbeitenden zu senden und als Kopie an den der das Formular erfasst hat.

Ich werde echt zu alt für das Zeug, bzw. habe zu viel in der Birne...
Genau das macht das Mailscript doch. Der Empfänger bekommt eine E-Mail. Der Absender ( der online das Formular ausfüllt ) bekommt ebenfalls diese Mail als Kopie.

Die Dankeseite kann auch nur mit dem Text versehen werden, das die Mail bei Euch angekommen ist.
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 »

Okay, das Video war auch sehr Lehrreich. Mal sehen ob ich es gleich noch schaffe, ansonsten muss ich mal in der mit Arbeit vollgestopften Woche da ran.
Vielen Dank auf jeden Fall schon mal!!!
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 »

Für heute höre ich auf...
Fehler beim absenden:
Warning: require(/customers/e/c/6/kreuztalertanzclub-casino.de/httpd.www/PHPMailer-6.9.1/src/Exception.php): Failed to open stream: No such file or directory in /customers/e/c/6/kreuztalertanzclub-casino.de/httpd.www/webmailer.php on line 12 Fatal error: Uncaught Error: Failed opening required '/customers/e/c/6/kreuztalertanzclub-casino.de/httpd.www/PHPMailer-6.9.1/src/Exception.php' (include_path='.:/usr/share/php') in /customers/e/c/6/kreuztalertanzclub-casino.de/httpd.www/webmailer.php:12 Stack trace: #0 {main} thrown in /customers/e/c/6/kreuztalertanzclub-casino.de/httpd.www/webmailer.php on line 12

Und so sieht es in de rphp aus:
9 use PHPMailer\PHPMailer\PHPMailer;
10 use PHPMailer\PHPMailer\Exception;
11
12 require __DIR__ . '/PHPMailer-6.9.1/src/Exception.php';
13 require __DIR__ . '/PHPMailer-6.9.1/src/PHPMailer.php';

Pfade und Dateien sind da...
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 gehe davon aus, das der PHPmailer in dem Verzeichnis liegt, wo auch die Webseiten, das Mailscript und alles andere liegt.
ftp1.png
Poste mal dein mailscript.php hier mit der Code Option

Falls Du ein Testverzeichnis angelegt hast, muss da natürlich auch alles rein ;)
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 »

Moin,

lade Dir bitte auf meiner Seite die SMTP-Version vom "mailscript.php" herunter. Sieht aus, als hättest Du die erste Version herunter geladen. Das ist die zweite (mittlere) Version am Button Download SMTP Mailscript:

https://www.mobirise-tutorials.com/Kont ... content5-v

SMTP-Mailscript.jpg



So ist der "PHPMailer" im Skript "mailscript.php" vom `Werner Zenk` dann eingebunden:

Code: Alles auswählen

// 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";

So die Erfolgsseite (danke.html) und die Fehlerseite (fehler.html), die dann natürlich auch beide bereits in Mobirise angelegt wurden und auch so heißen müssen oder Du müsstest Deine Seitennamen im Script anpassen:

Code: Alles auswählen

// 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.



So sieht das Verzeichnis vom "PHPMailer" dann am Server aus, das im Stammverzeichnis des verwendeten Projektes liegen muss. Solltest Du jetzt ein Verzeichnis "test" angelegt haben, dann gehört das auch in dieses Verzeichnis "test". Also immer in das Root (Wurzel) Verzeichnis des jeweiligen Mobirise-Projektes.

Es muss genau so heißen, dabei die Klein- und Großschreibung auch beachten:

PHPMailer-master

... also das Verzeichnis nicht so nennen wie im Download (PHPMailer-6.9.1), sondern nur den Inhalt von diesem Verzeichnis in das am Server selbst angelegte Verzeichnis PHPMailer-master kopieren! Siehe dazu auch meinen Screenshot unten.


So sieht dann der unveränderte Inhalt vom herunter geladenen Verzeichnis "PHPMailer-6.9.1" dann im selbst angelegten Verzeichnis PHPMailer-master am Server aus:

Verzeichnis vom PHPMailer.jpg


Ich verwende zur Zeit auch gerade die Version 6.9.1 vom PHPMailer. Hinweis: Du könntest dort später (musst aber nicht) auch jederzeit den Inhalt eines neueren "PHPMailer" hinein kopieren. Diese Scripts werden immer mal wieder aktualisiert. Die neueste Version ist im Moment 6.9.3.



Mail-Einstellungen im Script

Ganz wichtig ist auch die richtige Einstellung der E-Mail von Dir.

Du trägst also dort die Adresse vom Postausgangsserver (SMTP) von Deinem Provider ein, dort steht beispielhaft die vom Provider "IONOS" und Deine E-Mail-Adresse. Das muss zwingend die bei Deinem Provider angemeldete E-Mail Adresse sein. Also dort ersetzen, wo im Script steht "mail@example.com" und dann natürlich das entsprechende SMTP-Passwort auch.

Diese Zugangsdaten kannst Du, falls Du diese nicht notiert hast und nicht mehr weißt, im Kundenmenü Deines Anbieters (Providers) finden oder rufe dort an und erfrage diese.

Das sind alles genau die gleichen Einstellungen, wie z.B. bei Deinem Mail-Programm "Outlook":

Code: Alles auswählen

  // 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

Bei "// Absender und Empfänger" trägst Du auch nochmals die gleiche gültige E-Mail Adresse von Dir ein und anstelle der Beispielnamen "Jon Doe" und "Jane Foo" Deinen echten Namen, der in der Mail beim Empfänger erscheinen soll.




Wichtig

Erst wenn das alles einwandfrei funktioniert, binden wir die automatische Kopie an den Absender zusätzlich mit ein. Bitte immer alles schön der Reihe nach erstellen, sonst gibt es Chaos und Fehler.

Dann wahrscheinlich eher meine einfache Version, denn das sind dann nur zwei Zeilen. Wie steht ganz unten auf meiner Tutorialseite:

https://www.mobirise-tutorials.com/Kont ... .php#Kopie
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 »

Hallo Tommy,
vielen vielen Dank für die ausführliche Anleitung.
Keine Ahnung ob es jetzt sonst funktioniert, ich habe noch ein Problem bei Zeile 61 (und vermutlich dann auch 62).
$mail->setFrom("webmaster@kreuztalertanzclub-casino.de", "John Doe"); // Absender
$mail->addAddress("webmaster@kreuztalertanzclub-casino.de", "Jane Foo"); // Empfänger

Denn da gibt es direkt bei Zeile 61 (die obere) einen "parse-Fehler)
John Doe und Jande Foo hatte ich dringelassen um zu sehen ob man das damit erst mal verifizieren kann.
Mir steht der Kopf was weiß ich wo...
VG
Detlev
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,

eigentlich sieht so erst einmal alles richtig aus.

Übrigens, was Du dort als Namen für "John Doe" usw. einträgst ist vollkommen egal. Diese Name steht dann nur vor der E-Mail und dient als Hinweis für den Empfänger.

Gib doch mal die URL der Seite, damit man die Fehlermeldung sehen kann. Am Computer kannst Du das nicht testen, das muss online am Server geschehen, denn nur dort kann die PHP Skriptsprache überhaupt ausgeführt werden.

Was für einen Editor verwendest Du denn um das Skript zu bearbeiten?

Du darfst auf keinen Fall so etwas wie "Word", also kein Schreibprogramm, verwenden.

Da dürfen keine formatierten Anführungszeichen (Hochstriche) verwendet werden oder andere formatierte Zeichen, denn dann kann PHP das nicht interpretieren.

Du kannst zur Bearbeitung von Skripten zum Beispiel den "Windows-Editor" verwenden.

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/
stobi_de
Moderator
Moderator
Beiträge: 1332
Registriert: Di 11. Okt 2022, 06:30

Re: Kontaktformular mit Bestätigungsmail?

Beitrag von stobi_de »

Betreffend des ähnlichen Themas im anderen Forum (ich will jetzt da nicht vor Ort jemanden anmaulen): die Leute fragen etwas, bekommen eine absolut korrekte Antwort (diesmal sogar mit dem Witsec-Formular) - und dann fragen sie immer und immer wieder das Gleiche.
Warum fragen die Leute?

Da sind so ein paar Vollpfosten - und ich rede jetzt nicht von der Nuss, die einen eigenen Titel für die interne Mobi-Bearbeitung will.
Antworten

Wer ist online?

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