Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Hilfe für einen Form-Mailer aus einem html5 Formular
#1
Hi Leute,


ich versuche gerade einen Form Mailer zu erstellen, komme aber nicht weiter.

Das Formular sieht wie folgt aus:

Code:
<!-- Form Start -->
                        <form role="form" name="contactform" action="process.php">
                            <div class="form-group col-sm-4" id="name-group">
                                <input type="text" class="form-control" id="inputName" name="inputName" placeholder="Name">
                            </div>
                            <div class="form-group col-sm-4" id="email-group">
                                <input type="email" class="form-control" id="inputEmail" name="inputEmail" placeholder="E-Mail">
                            </div>
                            <div class="form-group col-sm-4" id="subject-group">
                                <input type="text" class="form-control" id="inputSubject" name="inputSubject" placeholder="Betreff">
                            </div>
                            <div class="form-group col-sm-12" id="message-group">
                                <textarea class="form-control" id="inputMessage" name="inputMessage" rows="6" placeholder="Nachricht"></textarea>
                            </div>
                            <button type="submit" class="btn btn-primary btn-lg">ABSENDEN</button>
                        </form>
                        <!-- Form End -->

die contact.php hat bisher nur folgenden Inhalt:


PHP-Code:
<?php
/* === Daten aus dem Formular auslesen und in Variablen speichern === */
      $vorname = $_POST['inputName'];
      $nachname = $_POST['nachname'];
      $email = $_POST['inputEmail'];
      $betreff = $_POST['inputSubject'];
      $nachricht = $_POST['inputMessage'];
     
      $name 
= $vorname.' '.$nachname;
     
    
/* === Empfängeradresse und Betreff === */
      $an = 'kontakt@mail.de'; //Hier Ihre E-Mail-Adresse eintragen
      $betreff = "Kontaktformularnachricht | $betreff $name ";
     
    
/* === Wenn Bedingung erfüllt, dann E-Mail abschicken - andernfalls Fehlermeldung ausgeben === */
        if ((!empty($name))&&(!empty($email))&&(!empty($betreff))&&(!empty($nachricht))) {
     
          mail
($an, $betreff, $nachricht, 'From:' . $email); //Mail versenden
     
          echo 
'Ihre Kontaktnachricht wurde zugestellt. Sie werden bald möglichst eine Antwort erhalten.';
        }
        else {
          echo 'Sie müssen alle Felder ausfüllen. <a href="index.html">Zurück</a>';
        }
?>
{"success":false,"errors":{"name":"Name ist ein Pflichtfeld.","email":"E-Mail ist ein Pflichtfeld.","subject":"Betreff ist ein Pflichtfeld.","message":"Nachricht ist ein Pflichtfeld."}} 


habs nun geschafft dass, das Formular abgeschickt wird und auch ankommt,

allerdings bleibt das Formular unverändert da stehen, also keine Meldung dass erfolgreich versendet oder eine Meldung wenn ich ein Feld leer lasse.


Danke für eure Hilfe
Zitieren
#2
Davon abgesehen, dass das Formular so unsicher ist (https://de.wikipedia.org/wiki/E-Mail-Injection), lässt sich deine Frage so nicht beantworten.
Die Zeile mit dem JSON-Code irritiert mich und auch ist völlig unklar wie der Code aufrufen und verwendet wird. Auch ist im Formular von process.php die Rede, die Datei heißt aber contact.php.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#3
mhh okay, daran hab ich nicht gedacht.

gibt es denn eine "sichere" Möglichkeit das Formular zu versenden ?
evtl mit hinzufügen eines captcha ?

Code:
<!-- Form Start -->
                        <form role="form" name="contactform" action="process.php">
                            <div class="form-group col-sm-4" id="name-group">
                                <input type="text" class="form-control" id="inputName" name="inputName" placeholder="Name">
                            </div>
                            <div class="form-group col-sm-4" id="email-group">
                                <input type="email" class="form-control" id="inputEmail" name="inputEmail" placeholder="E-Mail">
                            </div>
                            <div class="form-group col-sm-4" id="subject-group">
                                <input type="text" class="form-control" id="inputSubject" name="inputSubject" placeholder="Betreff">
                            </div>
                            <div class="form-group col-sm-12" id="message-group">
                                <textarea class="form-control" id="inputMessage" name="inputMessage" rows="6" placeholder="Nachricht"></textarea>
                            </div>
                            <button type="submit" class="btn btn-primary btn-lg">ABSENDEN</button>
                        </form>
                        <!-- Form End -->
Zitieren
#4
Ich gehe mal davon aus, dass Stefan mit "unsicher" meint, dass Du die Eingaben des Formulars einfach ungeprüft übernimmst....
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Flash spiele an html5 anpassen torty38 2 1.836 11.02.2020, 01:14
Letzter Beitrag: Lordikon30
  Eingaben aus Formular in Datenbank schreiben Harest 2 1.667 15.01.2012, 22:21
Letzter Beitrag: Harest
  Formular für Beiträge generieren leandrobaltazar 4 2.358 28.07.2009, 07:57
Letzter Beitrag: leandrobaltazar
  Newsletter-System mit Form und "Reply"-Email-Bestätigung GrosserBlonder 0 1.490 11.09.2007, 15:46
Letzter Beitrag: GrosserBlonder