Felix Riesterer: Problem beim Formular senden

Beitrag lesen

problematische Seite

Liebe(r) Gitty,

Die eingegebenen Daten sollen an eine Mailadresse verschickt werden.

soll das der Server leisten, oder soll das der User mit einem Mailprogramm tun?

Was muss ich im Quelltext ändern?

Oh je, da steht so extrem viel Zeug drinnen, für das sich nur der Internet-Explorer interessiert, weil es Microsoft-only-Code ist. Aus Sicht eines anderen Browsers ist das nur Kommentar-Flut im Quelltext. Aber gut, wollen mal sehen, was mein Firefox aus dem Code macht:

<form id="kontaktformular" name="kontaktformular" action="http://www.nordseespiegel.de">
                  <method="post"> <input name="empfaenger" value="kontakt@nordseespiegel.de" type="hidden">
                    <div><b><span style="color: #101e52;">Name:</span></b>&nbsp;&nbsp;&nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; <input name="name" id="name" required="required" size="30" maxlength="30" placeholder="Vor- und Nachname" autocomplete="on" type="text"></div>
                    <div><br>
                    </div>
                    <div><b><span style="color: #101e52;">Mailadresse:</span></b>&nbsp;&nbsp;
                      &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
                      &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; <input name="mailadresse" id="mailadresse" placeholder="Ihre Mailadresse" required="required" size="30" maxlength="30" autocomplete="on" type="text"></div>
                    <div><br>
                    </div>
                    <div><b><span style="color: #101e52;">Mailadresse:</span></b>&nbsp;&nbsp;
                      &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
                      &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp;
                      &nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; <input name="nachricht" id="nachricht" maxlength="1000" placeholder="Ihre Nachricht an uns" type="text"></div>
                    <div><br>
                    </div>
                  </method="post">
                  <div style="text-align: center;"><method="post">
                      <div><input name="datei" accept="text, image" type="file">&nbsp;
                        &nbsp; </div>
                    </method="post">
                    <div style="text-align: left;"><br>
                    </div>
                    <method="post"></method="post"></div>
                  <method="post">
                    <div><br>
                    </div>
                  </method="post"><method="post">
                    <div>
                      <div style="text-align: center;"><input name="absenden" action="kontakt@nordseespiegel.de" formmethod="post" formtarget="_blank" type="submit"><br>
                      </div>
                      <br>
                      <div> <br>
                        <br>
                      </div>
                      <div style="text-align: center;"><br>
                      </div>
                      <div><br>
                      </div>
                      <div><br>
                      </div>
                      <div><br>
                      </div>
                      <div><br>
                      </div>
                    </div>
                  </method="post"></form>

Vielen Dank im voraus.

Nicht so schnell! Ich mache Dir Dein Formular nicht heile, das tust Du bitte selbst. Hilfe dazu findest Du in unseren Tutorials zu Formularen, insbesondere an dieser Stelle: POST oder GET?

Leider steht direkt dort kein Code-Beispiel, daher hier die Kurzversion für Dich:

<form action="/pfad/zum/script" method="post">
  <p>
    <label>
      Name:
      <input name="name">
    </label>
  </p>
  <p>
    <button>Nachricht senden</button>
  </p>
</form>

Ich habe aber den ganz starken Verdacht, dass Du noch nicht weißt, was Du da tust. Insbesondere diese Zeile hier sieht für mich nach einem Missverständnis aus:

<input name="absenden" action="kontakt@nordseespiegel.de" formmethod="post" formtarget="_blank" type="submit">

Entweder soll das der Absende-Button sein, dann steht da zu viel (siehe mein Beispiel weiter oben), oder Du meinst, dass irgendeine Magie eine Mail an Dich sendet, die Du hiermit "irgendwie" definiert hast. Deshalb noch einmal die Frage: Hast Du ein serverseitiges Script, welches Mails verschickt? Denn sonst kannst Du keine Mail von der Website aus versenden (wer genau schickt hier etwas?), sondern musst allenfalls dem Benutzer ein teilweise vorausgefülltes Mail-Verfassen-Fenster anbieten, wenn dieser denn ein passendes Mailprogramm eingerichtet hat.

Liebe Grüße,

Felix Riesterer.