• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Kontaktformular schickt keine Mails.

Status
Für weitere Antworten geschlossen.

Vamiris

Neues Mitglied
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:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[URL]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd[/URL]">
<html xmlns="[URL]http://www.w3.org/1999/xhtml[/URL]">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Wacker &amp; Friends</title>
<style type="text/css">
<!--
body {
 background-color: #000000;
}
.Stil1 {
 font-family: Verdana, Arial, Helvetica, sans-serif;
 font-size: 12px;
 font-weight: bold;
 color: #723a0c;
}
.Stil3 {color: #723a0c}
.Stil5 {color: #723a0c; font-family: Verdana, Arial, Helvetica, sans-serif; }
.Stil6 {font-family: Verdana, Arial, Helvetica, sans-serif}
.Stil7 {font-size: 12px}
.Stil8 {color: #723a0c; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
-->
</style></head>
<body>
<table width="539" height="900" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td valign="top" background="2.jpg"><table width="539" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="170">&nbsp;</td>
      </tr>
      <tr>
        <td><?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="[email protected]"][email protected][/EMAIL]"; //Eigene Emailadresse
$subject = "Nachricht via Kontaktformular - Anmeldung Wacker & Friends"; //Betreff der Email
if ($flag==1) 
{
    //Eingaben überprüfen
    if(!$name){$fehler="<li>keinen Namen</li>";}
    if(!$telefon) {$fehler.="<li>keine Telefonnummer</li>";}
    if(!$teilnehmer) {$fehler.="<li>keine Teilnehmerzahl</li>";}
 if(!$text) {$fehler.="<li>keine Nachricht</li>";}
    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 ' <p align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Stil1">Sie haben die Nachricht erfolgreich versandt.<br />
';
    }
}
if(!$flag) //Formular
{
        ?>
      <form action='<? echo $PHP_SELF; ?>' method='post' enctype='multipart/form-data' name='form' id="form">
          <p align="left">
            <input type="hidden" name="flag" id="flag" style="font: 10px verdana; background-color:#723a0c;border-width:3px;
  border-style:solid;
  border-color:#ffffff;" value=1 /> 
&nbsp;&nbsp;            <span class="Stil1">&nbsp;<span class="Stil5"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Stil7">&nbsp;Name:</span></span></span><span class="Stil3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
             <input name="name" type="text" id="name" size="30" style="font: 10px verdana; background-color:#723a0c;border-width:1px;
  border-style:solid;
  border-color:#ffffff;" value='<?php echo $name; ?>' />
             <br />
             <br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;<span class="Stil6">&nbsp;</span></span><span class="Stil8">Telefonnummer             :</span>&nbsp;&nbsp;&nbsp;
             <span class="Stil3">
             <input name="telefon" type="text" id="telefon" size="30" style="font: 10px verdana; background-color:#723a0c; border-width:1px;
  border-style:solid;
  border-color:#ffffff;" value='<?php echo $telefon; ?>' />
             </span></p>
          <p align="left" class="Stil3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Stil6">&nbsp;</span><span class="Stil8">Teilnehmer:</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <input name="teilnehmer" type="text" id="teilnehmer" size="30" style="font: 10px verdana; background-color:#723a0c;border-width:1px;
  border-style:solid;
  border-color:#ffffff;" value='<?php echo $teilnehmer; ?>' />
            <br />
            <br />
             &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Stil6">&nbsp;</span><span class="Stil8">Anmerkungen:</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
             <textarea name="text" cols="30" rows="5" id="text" style="font: 10px verdana; background-color:#723a0c;border-width:1px;
  border-style:solid;
  border-color:#ffffff;"><?php echo $text; ?></textarea>
             <br />
             <br />
             &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
             <input class="button" type="submit" style="font: 10px verdana; background-color:#723a0c;border-width:1px;
  border-style:solid;
  border-color:#ffffff;" value="Absenden" />
             &nbsp;&nbsp;&nbsp;
            <input class="button" type="reset" style="font: 10px verdana; background-color:#723a0c;border-width:1px;
  border-style:solid;
  border-color:#ffffff;" value="L&ouml;schen" />
              </p>
      </form>
      <?php
      }
  ?></td>
      </tr>
      <tr>
        <td>&nbsp;</td>
      </tr>
    </table></td>
  </tr>
</table>
</body>
</html>
 
Versuch mal eine rudimentäre Datei zu erstellen, in welcher du dir eine "testmail" zukommen lässt. Mail-Funkion

PHP:
<?php
$whoin = '[email protected]';
mail($wohin, 'Test', 'Dies ist eine reine Testnachricht');
?>

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 :D

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 :D

@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
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben