Kontaktformular schickt keine Mails.

Habe ein Kontaktformular angepasst, anscheinend nicht richtig, Es schickt keine mails hinaus, ich weiß nur nicht, warum, da ich am php code ansich nichts geänder habe:

[CODE]

Wacker & Friends






 
<?php function check_email($email) //Emailadresse überprüfen { if( !preg_match("/^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,4}|museum$/i", $email) ) return true; return false; } // Allgemeine Variablen $name_tag[0] = "Sonntag"; $name_tag[1] = "Montag"; $name_tag[2] = "Dienstag"; $name_tag[3] = "Mittwoch"; $name_tag[4] = "Donnerstag"; $name_tag[5] = "Freitag"; $name_tag[6] = "Samstag"; $num_tag = date( "w"); $day = $name_tag[$num_tag]; $year = date("Y"); $day_num = date("d"); $month = date("m"); $time = (date("H:i")); $empfaenger = "[EMAIL="haus_waldesruh@web.de"]haus_waldesruh@web.de[/EMAIL]"; //Eigene Emailadresse $subject = "Nachricht via Kontaktformular - Anmeldung Wacker & Friends"; //Betreff der Email if ($flag==1) { //Eingaben überprüfen if(!$name){$fehler="
  • keinen Namen
  • ";} if(!$telefon) {$fehler.="
  • keine Telefonnummer
  • ";} if(!$teilnehmer) {$fehler.="
  • keine Teilnehmerzahl
  • ";} if(!$text) {$fehler.="
  • keine Nachricht
  • ";} if($fehler) //Fehlermeldung { $meldung="" .$fehler. ""; unset($flag);
    }
    else
    {
      //Email
      $body = "Nachricht gesendet am $day, $day_num.$month.$year um $time Uhr:
    

    Name : $name

    $telefon
    $teilnehmer
    $text";
    //Mail verschicken und Erfolgsmeldung ausgeben
    mail ($empfaenger, $subject, $body, „From:$email“);
    echo ’

         Sie haben die Nachricht erfolgreich versandt.

    ';
    }
    }
    if(!$flag) //Formular
    {
    ?>



        

           Name:
                       





             
    Telefonnummer :   



             Teilnehmer:           





              Anmerkungen:     
    <?php echo $text; ?>




             

       



    <?php } ?>
     
    [/CODE]

    Versuch mal eine rudimentäre Datei zu erstellen, in welcher du dir eine „testmail“ zukommen lässt. Mail-Funkion

    [PHP]

    <?php $whoin = 'deine@mail.de'; mail($wohin, 'Test', 'Dies ist eine reine Testnachricht'); ?>

    [/PHP]

    Beachte auch, dass teilweise Freemailer wie web.de oder gmx.de solche Mails als SPAM behandeln !

    Und wenn die mail()-Funktion nicht funktioniert, kann es daran liegen, dass der Hoster diese abgestellt hat.

    was soll das da oben sein? bedenke: es gibt kein register_globals mehr (dazu meinen beitrag lesen), deswegen aus superglobale zumsteigen (auch in meinem beitrag drin), dann gehts.

    Nils aka XraYSoLo

    Also bei dem Code sehe ich keine register_globals… Oder ich bin blind :smiley:

    Zudem: Dein Code ist superultrascheisse aufgebaut. Wieso baust du dir keinen eigenen Code? Wenn man den Code selber macht, dann hat man die Übersicht zu 100%. (Spreche aus eigenen Erfahrungen).

    MfG, matibaski

    ja, dann bist du blind.

    siehst du da wo $_POST? ich nicht, alles wird als normale variable weitergegeben.

    Nils aka XraYSoLo

    Lool… Direkt vor augen und nicht gesehn. Sorry :smiley:

    @Poster:
    Verwende $_POST oder $_REQUESU. Frag mich nicht, was der Unterschied ist. Ich weiss es nicht.

    Weiss es jemand von euch?

    MfG, matibaski

    wenn man etwas mit POST aufruft, dann geht PHP konsequent nur an formularfelder im body-bereich.

    ruft man REQUEST auf, dann probiert PHP sowohl GET als auch POST aus.

    Nils aka XraYSoLo

    Ok, habs selber nochmal geschrieben, hatt mich zwar knapp 10 Stunden gekostet aber geht ^^.
    Und nunja, habe mit register globals alles gelernt… muss mal mein Wissen aktualisieren. Danke