Erfolgreiches Submit mit PopUp verbinden?

3 Antworten

Dann muss die Seite die die Mail verschickt halt ein PopUp anlegen und anzeigen.

Einfacher wäre natürlich ganz einfach eine extra Seite anzuzeigen und danach auf die Startseite zu gehen, anstatt im Formular hängen zu bleiben

Woher ich das weiß:Berufserfahrung

Hi Manuelll267,

das kannst du mithilfe von JavaScript lösen. Du kannst einfach den Submit-Event abfangen den Prozess stoppen und die Daten aus dem Formular via HTTP-Request(Ajax) an deine PHP-Datei senden. Den Request kannst du dann per JavaScript behandeln und dann auf das Ergebnis ein "Popup" einblenden.

In der PHP-Datei kann eine Rückmeldung erfolgen ob die Mail erfolgreich gesendet wurde. Diese sendet dann eine Antwort auf deine Seite die dann via JavaScript verarbeitet wird.

hier ein kleines Beispiel in JavaScript:

meinForm = document.getElementById('meinForm');
meinForm.addEventListener('submit', (event) => {
  event.preventDefault();
let myFormData = new FormDate(meinForm);
let xhr = new XMLHttpRequest();
xhr.open(meinForm.method, meinForm.action);
xhr.addEventListener('readystatechange', ()=>{
if(xhr.status == 200 && xhr.readyState == 4) {
switch(xhr.responseText) {
case 'ok':
alert('E-Mail wurde gesendet');
break;
case 'error':
alert('E-Mail wurde nicht gesendet');
}
}
});
xhr.send(myFormData);
});
Woher ich das weiß:Studium / Ausbildung
Wie verbinde ich bei meinem Formular den erfolgreichen Submit button, also wenn die Email erfolgreich vom Php script per Mail gesendet wurde mit einem PopUp
<?
if(mail(...)) { 
  echo "<script>alert('hat geklappt')</script>";
}
else { 
  echo "<script>alert('hat nicht geklappt')</script>";
}
?>

Alex