cakephp 2.0 电子邮件调试不起作用



我正在实现电子邮件功能,并且它也可以正常工作.现在我必须在本地调试,所以做了一些更改,如下所示在应用程序/配置/电子邮件中.php我已经创建了这个

public $test = array(
        'from' => 'you@localhost',
        'transport' => 'Debug',
    );

现在在我的控制器中,我编写了以下代码

            $Email = new CakeEmail('test');
        $email->template('adddoctor', 'add');
        //$email->emailFormat('html');

        $email->from('sender@example.com');
        $email->to('recipient@example.com');//$data['User']['email_id'];
        $email->subject('Account Detail');

        $email->send();

发送邮件后,它会重定向到索引页。 所以在索引.ctp 文件中我写了

<?php echo $this->Session->flash('email'); ?>

我不想发送实际的邮件,但我只想展示它。那么任何人都可以告诉我我还需要为电子邮件调试做哪些更改吗?这里有一些人给出了答案蛋糕电子邮件调试

但是不明白在哪里编写代码?

这是将电子邮件保存到日志中需要执行的操作,这与您尝试实现的另一个问题的解决方案有关:

应用程序/配置/电子邮件.php

public $test = array(
    'log' => true
);

您的控制器

$Email = new CakeEmail('test');
$email->template('adddoctor', 'add');
$email->from('sender@example.com');
$email->to('recipient@example.com');
$email->subject('Account Detail');
$email->send();

如果您随后进入app/tmp/logs/debug.log您将看到电子邮件的条目,其中包括标题和消息

2012-11-27 14:37:47 Debug: 
From: My Site <me@example.com>
X-Mailer: CakePHP Email
Date: Tue, 27 Nov 2012 14:37:47 +0000
Message-ID: <50ad02b4b1fba42733cc02456a@example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
My message

但是,在我看来,除非您想查看标题,否则这一切都是相当无用的。 首先,您实际上无法"看到"您的电子邮件会是什么样子,其次,电子邮件将继续发送给收件人。

如果你想看看你的电子邮件的实际布局/CSS是什么样子的,你最好只给自己发送一些测试电子邮件。

我不知道为什么Cake摆脱了旧的电子邮件调试功能,因为它更有帮助。

$Email = new CakeEmail('test');
$email->template('adddoctor', 'add');

您正在创建对象$Email并使用$email这是错别字吗?

$response = $Email->send();
$response['headers']; // headers as string
$response['message']; // message body with attachments
$this->Session->setFlash($response['headers'].$response['message']);

确保布局文件中包含以下内容。

echo $this->Session->flash();

相关内容

  • 没有找到相关文章

最新更新