2013-06-12 124 views
0

請任何人蔘考此代碼,併爲我糾正它。 我在其他正在工作的網頁中使用了此代碼,但現在此腳本未發送該消息,它顯示了我的自定義錯誤消息。PHP電子郵件顯示錯誤

能否請你任何一個可以幫助我找到問題

謝謝

<?php 

     /* for admin */ 
     $registration_subject="Live demo registration"; 
     $registration_office="[email protected]"; 

     /* REGISTER details */ 

     $bizname = $_POST['txtbizname']; 
     $biztype = $_POST['cbobiztype']; 
     $address = $_POST['TxtAddress']; 
     $city = $_POST['TxtCity']; 
     $country = $_POST['cboCountry']; 
     $tel = $_POST['TxtTel']; 
     $fax = $_POST['TxtFax']; 
     $email = $_POST['TxtEmail']; 
     $web = $_POST['TxtWeb'];  
     $title = $_POST['Cbotitle']; 
     $contname = $_POST['txtcontname']; 
     $designation = $_POST['TxtDesignation']; 
     $mob = $_POST['TxtMob']; 
     $contemail = $_POST['TxtcontEmail']; 
     $callbiztime = $_POST['BizGMT']; 


     $body = <<<EOD 
    Business Name : $bizname <br> 
    Business Type : $biztype <br> 
    Address : $address <br> 
    City : $city <br> 
    Country : $country <br> 
    Tel : $tel <br> 
    Fax : $fax <br> 
    Email : $email <br> 
    Web : $web <br> 
    Title : $title <br> 
    Contact Person Name : $contname <br> 
    Designation : $designation <br> 
    Mobile : $mob <br> 
    Email : $contemail <br> 
    Call Me at : $callbiztime <br> 

    EOD; 


     $headers = "From : $email\r\n"; 
     $headers = "Content-type:text/html\r\n"; 
     $mail_status = mail($registration_office, $registration_subject, $body, $headers); 

    if ($mail_status) { ?> 
     <script language="javascript" type="text/javascript"> 
      alert('Thank you for the message. We will contact you shortly.'); 
      window.location = 'b2b.html'; 
     </script> 
    <?php 
    } 
    else { ?> 
     <script language="javascript" type="text/javascript"> 
      alert('Message failed. Please, send an email to [email protected]'); 
      windowwindow.location = 'b2b.html'; 
     </script> 
    <?php 
    } 
    ?> 
+0

它顯示'消息失敗。請發送....信息?或者你的意思是什麼「自定義錯誤信息」? – sebastian

+0

你在localhost上測試它嗎?你有測試它的SMTP服務器嗎? – Wallack

+0

這是你的郵件服務器的問題,而不是代碼。 –

回答

0

試着在你的腳本的頂部設置error_reporting(E_ALL),並在頁面或檢查任何錯誤的錯誤日誌。如果你仍然有問題,只需發佈​​你得到的錯誤。

+0

它顯示「該網站在檢索http://www.xxxx.com/B2BSolution.php時遇到錯誤,可能是由於維護或配置不正確造成的 以下是一些建議: 稍後重新加載此網頁 HTTP錯誤500(內部服務器錯誤):當服務器嘗試執行請求時遇到了意外情況「。 – user1138698

+0

這是您的腳本的問題(當PHP遇到錯誤時有時會返回HTTP 500)。仔細檢查您的代碼,並將error_reporting行也放在該腳本的頂部。發佈您看到的錯誤。 –

+0

哦,有一兩件事 - 如果你不能發現的bug,你應該張貼B2BSolution.php的整個代碼,這樣我們就可以分析它。 –

0

評論你的代碼,只是一些硬編碼值嘗試檢查郵件通常工作:

mail("[email protected]", "My Subject", "blablabla"); 

如果它不工作,你有一個問題,您的郵件服務器

1

你有:

$headers = "From : $email\r\n"; 
$headers = "Content-type:text/html\r\n"; 

您將要到第二行串聯到先用:

$headers = "From : $email\r\n"; 
$headers .= "Content-type:text/html\r\n"; 

http://php.net/manual/en/function.mail.php - 你需要指定「發件人」地址,該地址將丟失,因爲你目前使用的「內容類型」行替換它。

+0

是的,那個缺失('dot')就可以做到。接得好。 –