首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CakeEmail不工作

CakeEmail不工作
EN

Stack Overflow用户
提问于 2015-05-14 18:49:35
回答 1查看 293关注 0票数 0

这是我在一个控制器的cakephp方法中的代码,但没有电子邮件进入帐户。我真的需要这方面的帮助。

当我打印$cc变量时,它给出了一个数组的输出,但不知道如何知道邮件是否发送成功。

由于没有邮件到达邮件帐户,所以我猜邮件没有正确发送,或者我的代码中有一些bug。

代码语言:javascript
复制
$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);
EN

回答 1

Stack Overflow用户

发布于 2015-05-14 23:33:20

在尝试这样的操作时,我会使用不同的方法,而不是编写标记并将其赋值给$body变量。创建电子邮件的布局和视图,并将其用作标记。(见下文)

  1. 请确保您的email.php文件设置正确,我喜欢首先使用Gmail帐户发送它们,只是为了确保电子邮件功能正常工作。

公共$gmail = => (‘=>’=> 'smtp.gmail.com','port‘=> '465','username’=>‘你的Gmail email',’=>‘=>’你的Gmail密码‘,'transport’=> 'Smtp','tls‘=> trueenter code here );

  • 完成此操作后,将以下代码添加到控制器中。

$data =‘我正在将此字符串发送到电子邮件的视图,然后我可以使用$myData访问此字符串’;

$Email =新的CakeEmail();$ email ->模板(‘欢迎’,‘奇特’)->emailFormat(‘两者’)->to(‘要发送到的电子邮件地址’)->from(‘电子邮件地址来自.’),->viewVars(‘myData’=> $data) ->send();

  • Build电子邮件的标记你可以在这里找到文件。

应用程序/查看/电子邮件/html/欢迎.ctp应用程序/查看/布局/电子邮件/html/fancy.ctp

如果您有任何进一步的问题,请随时给我发邮件:

simpsond1988@gmail.com

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30235426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档