Seite 1 von 1
Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 10:38
von Xanthos
Grüß euch!
Ich arbeite gerade an einer Bestelloberfläche für unser Mitarbeiterportal. Diese Seite ist eigentlich nichts anderes als ein Formular welches mittels PHPMailer ein E-Mail an unsere Firma schickt welche im Anschluss automatisch in der Produktion ausgedruckt wird. Soweit funtkioniert dies erstaunlich gut, jedoch wird das Datum yyyy-mm-dd ausgegeben. Man könnte meinen eine belanglose Kleinigkeit, doch auf den Bestellzetteln recht unangenem zu lesen...
Würde dies gerne als dd.mm.yyyy Ausgeben!? Jemand eine Idee?
Lg Christian

Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 10:46
von Tommy Herrmann
Moin Christian,
ich bin nun auch kein PHP-Mensch - das geht aber auf jeden Fall. Lies mal auch hier:
https://www.php.net/manual/de/function.date.php
Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 12:27
von Xanthos
Hallo, vielen Dank für die rasche Antwort!
Mhm, leider finde ich nirgends entsprechende Einträge... weder im PHPMailer Script noch in der PHP des Bestellformulars... dies verbirgt sich wohl in den tiefen des assets Ordners!?
Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 12:37
von Klaus
Wo kommt den das Datum her, aus dem Formular selber?
Irgend eine Anleitung von Tommy?
Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 13:07
von Tommy Herrmann
Du schreibst
Mobirise-Formular
???
Mobirise verwendet
keinen PHPMailer sondern sendet den Inhalt eines Formulars an den Drittanbieter "Formoid" als Mailserver. Erst dort wird dieser Inhalt dann als E-Mail verarbeitet. Bei einem reinen
Mobirise-Formular
kannst Du also gar nichts ändern. Mobirise verwendet grundsätzlich keinerlei PHP.
... gucke mal, hier ein Skript von
Werner-Zenk.de (leider ist Werner nur noch selten hier).
Das benutze ich z.B. auch für Formulare von Mobirise, die ich dann mit der Methode "POST" an dieses Script "
mailscript.php" sende, was seinerseits den
PHPMailer zur Verarbeitung und dem Versandt nutz. Wie, steht im Link zu meiner Beispielseite und dem Tutorial, das Du hier findest:
https://www.mobirise-tutorials.com/Kontakt-Formular.php
Da wird auch das
Datum in das deutsche Format gesetzt:
// Zeitzone und das aktuelle Datum setzen
date_default_timezone_set("Europe/Berlin");
$datum = date("d.m.Y H:i");
Hier das gesamte Skript, indem man lediglich die Feldnamen von seinem
Mobirise-Formular
einträgt und natürlich den PHPMailer am Server installiert:
Code: Alles auswählen
<?php
/*
* mailscript.php versenden über SMTP mit Spamschutz gegen Bots
* Version vom 16.10.2021
* von Werner-Zenk.de
* 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 = "Spamschutz verdecktes Feld PHPMailer v6.5.0 mit SMTP Testseite Software-Ende";
// Wurden POST-Daten gesendet?
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST["field"])) {
// 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"] . "
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@meineDomain.de"; // SMTP Benutzername
$mail->Password = "************"; // SMTP Passwort
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // Implizite TLS-Verschlüsselung aktivieren Port 465
$mail->Port = 465; // Port - Postausgangsserver (SMTP) 465
// $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // Implizite STARTTLS-Verschlüsselung aktivieren Port 587 alternativ
// $mail->Port = 587; // Port - Postausgangsserver (SMTP) 587 alternativ
// Absender und Empfänger
$mail->setFrom("mail@meineDomain.de", "Kontakt-Formular SMTP"); // Absender
$mail->addAddress("mail@meineDomain.de", "Tommy"); // 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);
}
}
}
?>
Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 13:30
von Klaus
Ich habs gerade vermutlich gesehen was er meint.
In Deinem alten Formulargenerator ist ein Fehler drinnen.
Die Mail wird mit $datum und nicht mit $Datum (großes D) erstellt.
->Falls Du den verwendet haben solltest im $Text der Mail einfach ändern.
Ansonsten den Code von Formular und Skript mal zeigen.
Code: Alles auswählen
// 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 = "name@example.com";
// Inhalt der E-Mail setzen
$Text = " Gesendet am: $Datum Uhr
Name: $name
E-Mail: $email
Betreff: $betreff
Nachricht: $nachricht
Datum: $datum
";
Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 13:40
von Tommy Herrmann
... hmm - kann ich nicht beurteilen, ob das ein Fehler ist (Werner schreibt Variablen gerne groß), glaube aber eher nicht, denn das $Datum ist ja das Tagesdatum und das $datum ist der Feldname.
Bei diesem Formular kannst Du anhaken, dass Du eine
Kopie Deiner Mail bekommst. Du kannst das also selbst gerne testen.
Ich habe diesen alten "Formular-Generator" vom Werner
unverändert übernommen und wende das dort generierte Skript zum Beispiel bei diesem Formular an:
https://www.mobirise-tutorials.com/Formular/kontakt.php
Die Mail kommt
absolut korrekt bei mir an.
Test von gerade eben:
Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 13:52
von Nachtfalke
Das hatten wir schon mal…
Schau mal unter
viewtopic.php?t=533
Ganz unten.
Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 13:56
von Tommy Herrmann
Dieter,
Ich bin immer wieder überrascht, wie ihr euch solche Beiträge merken könnt
... faszinierend

Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 13:57
von Klaus
Ja hast Recht oben ist das aktuelle und im Text dann das aus dem Formular.
Bei mir ist das aber trotzdem "falsch rum", so wie es aus dem Datepicker halt übers POST kommt.
... ah, ja da gibts ja schon was ... OK ...
Re: Datumsformat in Mobirise Formular ändern
Verfasst: Di 1. Nov 2022, 14:35
von Xanthos
Bin jetzt leider gerade unterwegs... Entschuldigt die wenigen Informationen!
Arbeite mit dem Mobirise Formulargenerator welcher dann an PHPMailer anstatt Formoid weitergibt.
PHPMailer habe ich die neueste Version 6.5.5 und PHP 8.1 am Server laufen. War jedoch unter der alten Version genauso.
Das "Datumsmodul" vom Generator zeigt im Formular auch alles richtig an, nur in der E-Mail steht es verkehrt.
Habe noch eine Version mit Dropdown-Feldern versucht, ist halt keine so elegante Lösung.
Werde wenn ich Zuhause bin ein paar Screenshots hochladen und mir eure Antworten genau Durchlesen!
Danke! LG Christian