kostenloser Webspace werbefrei: lima-city


Kontaktformular sendet keine Mail

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    the-crow2010

    the-crow2010 hat kostenlosen Webspace.

    Hi @ all

    Ich habe ein Problem mit meinem Kontaktformular. Bin bei PHP noch nicht so bewandert, deswegen seh ich den Fehler nicht...(Oder is evtl keiner drin? man weiß es nicht :) )

    Hier mal das Script: (Ist ein fertiges gewesen, was ich angepasst habe)
    <?php
    
    // Tragen Sie hier die E-Mail Adresse ein, an die die E-Mails verschickt werden sollen
    define("MAIL_TARGET","<email zensiert>");
    
    // Hier können Sie die Fehlermeldungen festlegen, die erscheinen wenn ein Benutzer das Formular unzureichend ausfüllt.
    define("errorName","Ihr Name muss mindestens 2 Zeichen lang sein.");
    define("errorAdress","Ihre Adresse muss mindestens 5 Zeichen lang sein.");
    define("errorAdress2","Ihre Postleitzahl/Ortsname muss mindestens 5 Zeichen lang sein.");
    define("errorphone","Ihre Telefonnummer muss mindestens 4 Zeichen lang sein.");
    define("errorEmail","Sie haben eine ungültige E-Mail Adresse eingegeben.");
    define("errorMsg","Ihre Nachricht muss mindestens 10 Zeichen lang sein.");
    define("errorCaptcha", "Falsch eingegeben!");
    
    function createForm($name="",$adress="",$adress2="",$phone="",$email="",$betreff="",$message="",$error1="",$error2="",$error3="",$error4="",$error5="",$error6="",$error7=""){
      $zahl1 = rand(10,20); //Erste Zahl 10-20
      $zahl2 = rand(1,10);  //Zweite Zahl 1-10
    ?>
          <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
            <table>
              <tr><td width="180px">&nbsp;Name: </td><td class="fehler"><?php echo $error1; ?></td></tr>
              <tr><td colspan="2"><input class="text" type="text" name="name" value="<?php echo $name; ?>"></td></tr>
              
              <tr><td>&nbsp;Straße, Hausnummer:</td><td class="fehler"><? $error2; ?></td></tr>
              <tr><td colspan="2"><input class="text" type="text" name="adress" value="<?php echo $adress; ?>"></td></tr>
    		  
    		  <tr><td>&nbsp;Ort, PLZ</td><td class="fehler"><?php $error3; ?></td></tr>
              <tr><td colspan="2"><input class="text" type="text" name="adress2" value="<?php echo $adress2; ?>"></td></tr>
    		  
    		  <tr><td>&nbsp;Telefon nummer:</td<td class="fehler"><?php echo $error4; ?></td></tr>
    		  <tr><td colspan="2"><input class="text" type="text" name="phone" value="<?php echo $phone; ?>"></td></tr>
              
              <tr><td>&nbsp;E-Mail Adresse:</td><td class="fehler"><?php echo $error5; ?></td></tr>
    		  <tr><td colspan="2"><input class="text" type="text" name="email" value="<?php echo $email; ?>"></td></tr>
              
              <tr><td>&nbsp;Betreff:</td><td class="fehler"><?php echo $error6; ?></td></tr>
              <tr><td colspan="2"><input class="text" type="text" name="betreff" value="<?php echo $betreff; ?>"></td></tr>
    		  
              <tr><td>&nbsp;Nachricht:</td><td class="fehler"><?php echo $error7; ?></td></tr>
              <tr><td colspan="2"><textarea cols="40" rows="6" name="message"><?php echo $message; ?></textarea></td></tr>
    		  
    		  <tr><td colspan="2" class="rechenaufgabe">&nbsp;Bitte lösen Sie folgende einfache Rechenaufgabe:</td></tr>
    		  <tr><td><?php print $zahl1; ?> + <?php print $zahl2; ?> = </td><td><input type="text" name="summe" size="5"></td></tr>	
              <tr><td colspan="2" class="fehler"><?php echo $error4; ?></td></tr>		  
              <tr><td colspan="2"><input class="submit" type="submit" name="submitBtn" value="Senden"></td></tr>
    
            </table>
            <input type="hidden" name="zahl1" value="<?php print $zahl1; ?>"/>
            <input type="hidden" name="zahl2" value="<?php print $zahl2; ?>"/>
          </form>
           
    <?php
    }
       
    function isValidEmail($email){
       $pattern = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$";
         
       if (eregi($pattern, $email)){
          return true;
       }
       else {
          return false;
       }   
    }
    
    function sendMail($name,$adress,$adress2,$phone,$email,$betreff,$message){
        
    
    	
        $subject = "Neue Nachricht über das Kontaktformular von Sozialdienst Olching e.V. erhalten";
        $from    = "From: $name <$email>\r\nReply-To: $email\r\n"; 
        $header  = "MIME-Version: 1.0\r\n"."Content-type: text/html; charset=iso-8859-1\r\n";
        $content = $name.' ('.$email.')'.' hat Ihnen folgende Nachricht gesendet:<br /><br /><br /><strong>'.htmlspecialchars($betreff).'</strong><br /><br />'.htmlspecialchars($message);
        
        $content = wordwrap($content,70);
        mail(MAIL_TARGET,$subject,$content,$from.$header,"Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable");
    
    }
    ?>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
    <html>
    <head>
       <title>Kontaktieren Sie uns</title>
    
    </head>
    <body>
        <div id="main">
    	  <!--  Hier können Sie die Überschrift des Formulars ändern.  //-->
          <div id="titelschrift">Sie möchten gerne Kontakt mit uns aufnehmen?<br> Hier haben Sie die Möglichkeit!</div> 
    <?php if (!isset($_POST['submitBtn']))  { 
        createForm();
    } else  { 
    
      if( ($_POST['zahl1'] > 0) && ($_POST['zahl1'] + $_POST['zahl2'] == $_POST['summe']) ){
    
          $name    = isset($_POST['name']) ? $_POST['name'] : "";
    	  $adress  = isset($_POST['adress']) ? $_POST['adress'] : "";
    	  $adress2 = isset($_POST['adress2']) ? $_POST['adress2'] : "";
    	  $phone   = isset($_POST['phone']) ? $_POST['phone'] : "";
          $email   = isset($_POST['email']) ? $_POST['email'] : "";
    	  $betreff = isset($_POST['betreff']) ? $_POST['betreff'] : "";
          $message = isset($_POST['message']) ? $_POST['message'] : "";
    	  
          
          $error = false;
          
          if (strlen($name)<2) {
              $error = true;
              $error1 = errorName;
          }
    	  if (strlen($adress)<5) {
              $error = true;
              $error2 = errorAdress;
          }
    	  if (strlen($adress2)<5) {
              $error = true;
              $error3 = errorAdress2;
          }
    	  if (strlen($phone)<3) {
              $error = true;
              $error4 = errorphone;
          }
          if (!isValidEmail($email)) {
              $error = true;
              $error5 = errorEmail;
          }
    	  if (strlen($betreff)<2) {
              $error = true;
              $error6 = errorBetreff;
          }
          if (strlen($message)<10) {
              $error = true;
              $error7 = errorMsg;
          }
          
          if ($error){
             createForm($name,$adress,$adress2,$phone,$email,$betreff,$message,$error1,$error2,$error3,$error4,$error5,$error6,$error7); 
          }
          else {
              sendMail($name,$adress,$adress2,$phone,$email,$betreff,$message);
              
              ?>
    		<div id="ergebnisseite">
    			<table width="100%">
    			<tr><td>
    				<!--  Hier können Sie die Nachricht ändern, die dem Benutzer nach dem Abschicken des Formulars angezeigt wird.  //-->
    				Vielen Dank für Ihre Nachricht! <br> Unsere Mitarbeiter werden Ihre Anfrage schnellstmöglich bearbeiten.
    			</td></tr>
    			</table>
    		</div>
    <?php
        }
    } else {
    
          $name    = isset($_POST['name']) ? $_POST['name'] : "";
    	  $adress  = isset($_POST['adress']) ? $_POST['adress'] : "";
    	  $adress2 = isset($_POST['adress2']) ? $_POST['adress2'] : "";
    	  $phone   = isset($_POST['phone']) ? $_POST['phone'] : "";
          $email   = isset($_POST['email']) ? $_POST['email'] : "";
    	  $betreff = isset($_POST['betreff']) ? $_POST['betreff'] : "";
          $message = isset($_POST['message']) ? $_POST['message'] : "";
             createForm($name,$adress,$adress2,$phone,$email,$betreff,$message,"","","","","","",errorCaptcha); 
    }
    }
    ?>
    	</div>
    	 	 </div>
    </body>


    ich hab den CSS-Style bereich rausgenommen, damits nich so rießig ist.

    Mein Problem ist nun folgendes.

    Ich lade die Datei hoch, ruf sie auf...geht, fülle alle felder aus, geht auch (fehler funktionieren auch soweit ich das gesehen habe) dann drücke ich auf senden...die "danke, bla, nachricht gesendet" seite erscheint...aber ich bekomme keine e-Mail...Warum??

    Danke und Grüße

    Crow



    Edit by karpfen: Zum Schutz vor Spam E-Mail-Adresse zensiert!

    Beitrag zuletzt geändert: 28.6.2010 8:49:49 von karpfen
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. hi,

    klick mal auf den roten link oben.
    dort steht dann das die mail funktion immo nicht aviable ist.

    mfg matthimeo

    EDIT:
    - PHP-Funktion mail() wird derzeit auf dem neuen Webspace integriert und wird in den nächsten Tagen wieder anlaufen. Wann steht nicht fest. Es dauert noch.-


    Beitrag zuletzt geändert: 25.6.2010 14:58:52 von matthimeo
  4. Autor dieses Themas

    the-crow2010

    the-crow2010 hat kostenlosen Webspace.

    Das heißt aber prinzipiell für mich, wenn mein Formular funktioniert und keine Fehler anzeigt, sollte es funktionieren? (Wenn mail() gehen würde?)
  5. So ist es. Damit closed!
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!