Profil | Mitglieder | Registrieren | Start | Suche


PHP-Support.de » Programmierung » PHP & MySQL » echo im PHP Kontaktformular in HTML ausgeben?    » Hallo Gast [Login | Registrieren]

Neues Thema | Antworten   

Autor Beitrag
müssen
Mitglied
Neuling


Dabei seit: 29.06.2020
Herkunft: keine Angabe
Posts: 1
     echo im PHP Kontaktformular in HTML ausgeben? Zitat | Bearbeiten

Hallo zusammen, leider bin ich nicht wirklich bewandert in der PHP Programmierung und unfassbar froh darüber hier ein php Kontaktformular gefunden zu haben. Nun habe ich nur das Problem, dass ich gerne dem Nutzer nach Versand der Anfrage im HTML Formular eine Bestätigung ausgeben möchte, dass der Versand erfolgreich war.

Kann mir hier jemand helfen?

Das Formular ist dieses hier:
https://www.php-einfach.de/experte/php-codebeispiele/kontaktformular/

Es geht um den letzten Teil:

 PHP 
1:
2:
3:
4:
5:
6:
7:
8:
//Weiterleitung, hier konnte jetzt per echo auch Ausgaben stehen
if($mail_senden){
  header("Location: ".$url_ok); //Mail wurde gesendet
  exit();
} else{
  header("Location: ".$url_fehler); //Fehler beim Senden
  exit();
}


Wenn ich hier ein echo einfüge, dann springt der Browser auf die mail.php Seite und gibt nur den Text aus. Ich würde aber gerne das echo in meinem Kontakformular in der HTML Datei ausgeben, also hier:

<form method="post" action="send_email.php">
<label for="Name"><b>Name:</b></label><br>
<input type="text" id="Name" name="Name"><br><br>

<label for="Email"><b>E-Mail:</b></label><br>
<input type="text" id="Email" name="Email"><br><br>

<label for="Betreff"><b>Betreff:</b></label><br>
<input type="text" id="Betreff" name="Betreff"><br><br>

<label for="Nachricht"><b>Nachricht:</b></label><br>
<textarea id="Nachricht" name="Nachricht" rows="10" cols="50"></textarea> <br><br>

<input type="submit" name="submit">
</form>

Danke für eure Hilfe!


29.06.2020, 22:48 Profil | PM | E-Mail  
asdf
Mitglied
Guter User


Dabei seit: 26.10.2009
Herkunft: keine Angabe
Posts: 439
      Zitat | Bearbeiten

Naja, dazu gibt es diverse Möglichkeiten.

Folgende fallen mir gerade spontan ein:
1. In der URL an der man nach dem senden weitergeleitet wird per get z.B. ?send=ok mitgeben. Auf der Formular Seite eine If-Schleife die falls send "ok" ist, ausgeben das die Nachricht erfolgreich gesendet wurde.
2. Alles auf einer Seite (anstelle von send_mai.php und formular.php). z.B. im form unter action "?send=1" (nicht send_mail.php) und somit der ganze Quellcode der momentan auf send_mail.php hast nur ausführen wenn send=1 ist. Dann statt eine Weiterleitung (header("Location: ".$url_ok); //Mail wurde gesendet) einfach echo 'Nachricht erfolgreich gesendet';.
3. Das Ganze mit Ajax bauen, dann hättest du zudem den Vorteil das die Seite nicht neu laden muss bzw. auf eine andere Seite weitergeleitet werden muss.
https://www.w3schools.com/xml/ajax_intro.asp

Variante 3 ist sicher nicht so schnell umsetzbar, bzw. bruacht noch etwas Konw-How. Währe aber meiner Meinung nach die schönste Variante.


04.07.2020, 11:37 Profil | PM | E-Mail  
Seiten (1):  1 
PHP-Support.de » Programmierung » PHP & MySQL » echo im PHP Kontaktformular in HTML ausgeben?   

Neues Thema | Antworten   


Powered by Command Board 1.0 - Beta 2.0 © 2004-08 PHP-Einfach | Impressum | Datenschutz