2017-06-27 8 views
1

Ich habe Probleme, meine Kontaktformular zu arbeiten und Nachrichten an die Mail weiterzuleiten.Kontaktformular funktioniert nicht: Hinweis: Undefinierter Index: Nachricht

ich die folgende Meldung, wenn ich meine Nachricht übermitteln:

Screenshot: enter image description here

Soweit ich weiß, sollte es gut funktioniert werden. Außerdem habe ich Materialise CSS verwendet. Die Echo-Nachrichten sind auf Dänisch (egal, diese), sie drucken nur "Danke für Ihre Nachricht" und "Fehler".

<?php 
    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $message = $_POST['message']; 
    $formcontent = "Fra: $name \n Besked: $message"; 
    $recipient = "[email protected]"; 
    $subject = "Kontaktformular"; 
    $mailheader = "Fra: $email \r\n"; 
    mail($recipient, $subject, $formcontent, $mailheader) or die("Fejl!"); 
    echo "Tak for din besked!"; 
    ?> 


    <div class="container"> 

    <div class="row"> 
     <form action="mail.php" method="POST" class="col s12"> 
     <div class="row"> 

      <div class="row"> 
      <div class="input-field col s6"> 
       <input id="name" type="text" class="validate"> 
       <label for="name">Navn</label> 
      </div> 
      <div class="input-field col s6"> 
       <input id="email" type="text" class="validate"> 
       <label for="email">E-mail</label> 
      </div> 
      </div> 

      <div class="row"> 
      <div class="input-field col s12"> 
       <textarea id="message" class="materialize-textarea"></textarea> 
       <label for="message">Besked til Safemove</label> 
      </div> 
      </div> 

      <div class="row"> 
      <div class="col m12"> 
       <button class="btn waves-effect waves-light background-orange" type="submit" name="action">Send besked 
       <i class="material-icons right">send</i> 
       </button> 
      </div> 
      </div> 

     </div> 
     </form> 
    </div> 
    </div> 
+1

weil Sie 'name' Attribut in Eingabe für alle Felder fehlen. –

+0

fehlendes Namensattribut – JYoThI

Antwort

1

Fehlende nameattribute in Ihrer alle Eingabefelder ein.

<input id="name" name="name" type="text" class="validate"> 
..    ^^^^^^^^^^   
<input id="email" name="email" type="text" class="validate"> 
.. 
<textarea id="message" name="message" class="materialize-textarea" > </textarea> 

Hinweis: Eingabe ohne name attributes werden ignoriert Wert nicht an den Server senden.

+0

Dies ist eine häufige doppelte Frage und sollte nicht beantwortet werden. Stattdessen sollten Sie stimmen, um als Duplikat zu schließen. –

Verwandte Themen