2012-03-29 6 views
0

Okay, ich arbeite in jQuery Mobile, und ich habe nur ein PHP-Skript für das E-Mail-Formular eingefügt. Alles funktioniert super, außer nichts wird in meinen Posteingang geschickt. Hier ist die Form und PHP-Code, könnte hier wirklich Hilfe verwenden. Ich habe mich am längsten am Kopf kratzt.Warum sendet mein PHP-Skript keine E-Mail?

<?php 
if($_SERVER['REQUEST_METHOD'] == "POST") 
{ 
    $message_body = 'First Name: ' . $_POST['firstName'] . ' 
      Last Name: ' . $_POST['lastName'] . ' 
      Email: ' . $_POST['email'] . ' 
      Company: ' . $_POST['company'] . ' 
      Phone: ' . $_POST['phone'] . ' 
      Services: ' . $_POST['serviceAreas'] .' 
      Message: ' . $_POST['comments']; 

    $to  = '[email protected]'; 
    $subject = 'MobilizeWorldwide.com Contact Submission'; 
    $message = $message_body; 
    $headers = 'From: [email protected]' . "\r\n" . 
      'Reply-To: ' . $_POST['email'] . "\r\n" . 
      'X-Mailer: PHP/' . phpversion(); 

    mail($to, $subject, $message, $headers); 

    header('Location: ' . $_POST['thankspage']); 
} 
else 
{ 
    echo 'There is no post information.'; 
} 

HTML:

<form method="post" action="email.php"> 
      <input type="text" name="firstName" placeholder="First name" required> 
      <input type="text" name="lastName" placeholder="Last name" required> 
      <input type="text" name="email" placeholder="Email Address" required> 
      <input type="text" name="company" placeholder="Company"> 
      <input type="text" name="phone" placeholder="Phone Number"> 
      <fieldset> 
      <legend>Please indicate service areas of interest, and select all that apply:</legend> 
      <input id="airFrame" name="serviceArea" type="checkbox"> 
      <label for="airFrame">VISA</label> 
      <input id="compMaint" name="serviceArea" type="checkbox"> 
      <label for="compMaint">AmEx</label> 
      <input id="engineAPU" name="serviceArea" type="checkbox"> 
      <label for="engineAPU">Mastercard</label> 
      <input id="engineAPULeas" name="serviceArea" type="checkbox"> 
      <label for="engineAPULeas">VISA</label> 
      <input id="lMaint" name="serviceArea" type="checkbox"> 
      <label for="lMaint">AmEx</label> 
      <input id="gTS" name="serviceArea" type="checkbox"> 
      <label for="gTS">Mastercard</label> 
      <input id="onW" name="serviceArea" type="checkbox"> 
      <label for="onW">VISA</label> 
      <input id="train" name="serviceArea" type="checkbox"> 
      <label for="train">AmEx</label> 
      </fieldset> 
      <textarea id="comments" name="comments" placeholder="Comments" rows="8"></textarea> 
      <button type="submit" value="Submit" name="submit"> 
     </form> 
+0

was bedeutet 'mail()' zurückkehren? –

+1

Können Sie dies am Anfang Ihrer email.php setzen: 'error_reporting (E_ALL)', kommentieren Sie den 'header()' Teil und fügen Sie den Fehler hier plz ein. – Bokw

+1

verschicken Sie Mail von localhost? ist SMTP in Ihrem LOCALHOST konfiguriert? Überprüfen Sie, welche Mail-Funktion Sie zurückgibt. –

Antwort

0

ich nicht Ihre HTML-Form betrachten haben, wie ich Ihre post-Methode funktioniert gut glauben und email.php alle Werte bekommen, wie Sie, hier in meinem Fall gesetzt Ich gehe davon aus Blindwerte zum Prüfen Sie Skript,

<?php 

$message_body = 'First Name: ' . "tariq" . ' 
     Last Name: ' . "sarwar" . ' 
     Email: ' . "[email protected]" . ' 
     Company: ' . "renai" . ' 
     Phone: ' . "123456" . ' 
     Services: ' . "abcdef" .' 
     Message: ' . "Test message" ; 

$to  = '[email protected]'; 
$subject = 'MobilizeWorldwide.com Contact Submission'; 
$message = $message_body; 
$headers .= 'From: "user" <[email protected]>' . "\r\n"; 

if (mail ($ zu, $ subject, $ message, $ Header)) echo "msg gesendet"; sonst echo 'Es gibt keine Post-Informationen.';

>

, wie ich es vorher erwähnt, dass ich habe die Ergebnisse aber als Spam für gmail, und funktioniert gut für andere Mailing-Servern?;

enter image description here

+0

Danke für das Posten! Ich denke, das Problem ist der PHP-Mail-Server, wo ich arbeite. Dieses Problem ist schon früher aufgetreten, also bin ich im Gespräch mit unserem Host um zu sehen, ob das behoben werden kann. Ich werde Sie wissen lassen, ob ich noch Hilfe brauche. Danke für all die wirklich hilfreiche Hilfe, bedeutet viel: n) !!!! –