if($this->User->saveField('reset_password_token',$fu['User']['reset_password_token'])){
$Email = new CakeEmail();
$Email->to("makamo66@hotmail.com");
$Email->subject("Password Reset Request - DO NOT REPLY");
$Email->replyTo("makamo66@hotmail.com");
$Email->from('makamo66@hotmail.com');
$Email->sender('makamo66@hotmail.com', 'Do Not Reply');
$Email->template("resetpw");
$Email->emailFormat("html");
$Email->send('Do not reply');
$this->Session->setFlash(__('Check your email to reset your password.', true));
saveField可以工作并更新表格和“请检查您的电子邮件以重置密码”消息。也显示,但电子邮件永远不会被发送。如何使电子邮件正常工作?这是cakephp第2版。
答案 0 :(得分:0)
发送电子邮件时可能会出现服务器问题。您应该使用try catch block调试电子邮件发送代码:
try {
$Email->send('Do not reply');
} catch (Exception $e) {
echo "Exception caught: " . $e->getMessage();
exit;
}
答案 1 :(得分:0)
问题出在我的hotmail帐户上。它将电子邮件发送到我的垃圾邮件文件夹,显然当某个发件人的垃圾邮件过多时,它会阻止发件人。