2015-05-14 133 views
0

這是我在我的控制器中的cakephp方法中的代碼,但沒有任何電子郵件即將到賬。我真的需要幫助。CakeEmail不能正常工作

當我打印$cc變量,它給人陣列的輸出,但不知道怎麼知道郵件是否已成功或不發送。

由於沒有郵件來到mailaccount,所以我猜郵件是不正確森德,或者出現在我的代碼一些bug。

$email = new CakeEmail('default'); 
$body = "<html> 
     <head> 
      <meta http-equiv='Content-Type' content='text/html; charset=utf-8' /> 
     </head> 
     <body> 
      <div style='background: #F6F6F6; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; margin: 0; padding: 0;'> 
       <table cellspacing='0' cellpadding='0' border='0' height='100%' width='100%'> 
        <tr> 
         <td align='center' valign='top' style='padding: 20px 0 20px 0'> 
          <table bgcolor='FFFFFF' cellspacing='0' cellpadding='10' border='0' width='624' style='border:1px solid #E0E0E0;'> 
           <tr> 
            <td width='147' align='center'><img src='".Router::url('/', true)."images/logo.png'></td> 
           </tr> 
           <tr bgcolor='#666666'> 
            <td colspan='2' align='center'> 
            Forgot Password 
            </td> 
           </tr> 
           <tr bgcolor='#CCCCCC'> 
            <td colspan='2'>Hello Admin, </td>   
           </tr> 
           <tr bgcolor='#E7E6EC'> 
            <td> </td> 
            <td width='415'>Your new password : ".$new_password."</td> 
           </tr> 
          </table> 
         </td> 
        </tr> 
       </table> 
      </div> 
     </body> 
    </html>"; 

$email->from(array($adminemail =>"Cakeshop")); 
$email->emailFormat('both'); 
//$email->to($check['AdminLogin']['admin_email_address']); 
$email->to(array($adminemail)); 
$email->subject('Recover Password'); 

$cc=$email->send($body); 
+0

請嘗試的var_dump($ CC)和檢查郵件發送狀態,它會返回的布爾 –

+0

它返回的數據 – soumikwebdeveloper

+0

陣列共享你的回報輸出數組。 –

回答

0

當嘗試這樣的事情時,我會使用一種不同的方法,而不是編寫標記並將其分配給$ body變量。爲電子郵件創建佈局和視圖,並將其用作標記。 (見下文)

  1. 請確保您有設置你的email.php文件正確,我喜歡使用Gmail帳號在第一送他們只是要確定電子郵件的功能是否正常。

    公共$的Gmail =陣列( '主機'=> 'smtp.gmail.com', '口'=> '465', '用戶名'=> '您的Gmail電子郵件', '密碼' => '您的Gmail密碼', '傳輸'=> 'SMTP', 'TLS'=>真enter code here );

  2. 一旦你這樣做了下面的代碼添加到您的控制器。

    $數據=「我送這個字符串的電子郵件的觀點,然後我就可以訪問使用$ myData的這串」;

    $電子郵件=新CakeEmail(); $ Email-> template('welcome','fancy') - > emailFormat('both') - > to('Email address to be sent to') - > from('Email address coming from'。 ), - > viewVars(array('myData'=> $ data)) - > send();

  3. 爲您的電子郵件構建標記,您可以在此處找到這些文件。

應用程序/查看/電子郵件/ HTML/welcome.ctp 應用程序/瀏覽/設計/電子郵件/ HTML/fancy.ctp

如果您有任何疑問,請隨時給我發電子郵件:

[email protected]