当我在IndexController.php中使用以下代码时,我收到错误,如代码下方所示:
IndexController.php中的代码
<?php
class IndexController extends Zend_Controller_Action
{
public function init()
{
/* Initialize action controller here */
}
public function indexAction()
{
$config = array
(
'auth' => 'login',
'username' => 'mymail@gmail.com',
'password' => 'mypass',
'ssl' => 'ssl',
'port' => 465,
);
$transport = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config);
$mail = new Zend_Mail();
$mail->addTo('othermail@gmail.com', 'me' )
->setFrom('mymail@gmail.com', 'me')
->setSubject('your trial at fitness first')
->setBodyText('email body in plain text')
->send($transport);
}
}
页面上显示错误:
An error occurred
Application error
我从来没有编辑任何其他文件只是安装了zend并创建了一个新项目并继续进行,因为教程说...
但是我遇到了@上面的错误
答案 0 :(得分:1)
解释起来相当复杂,但我试试。
当ZF中发生错误时,通常会抛出异常。这会在你的ErrorController中启动。
在该ErrorController中,只有在指定
时才会获得堆栈跟踪和错误消息phpSettings.display_errors = 1
对于您当前使用的application/configs/application.ini
,在APPLICATION_ENV
中
看看:http://framework.zend.com/manual/en/zend.application.quick-start.html,它描述了它是如何工作的。
设置APPLICATION_ENV的简便方法是将其放在.htaccess
文件
SetEnv APPLICATION_ENV development
这一切都在链接中描述。
然后编辑您的application/configs/application.ini
,如:
[development]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
答案 1 :(得分:0)
如果您使用的是Gmail,请尝试将配置更改为:
$config = array
(
'auth' => 'login',
'username' => 'mymail@gmail.com',
'password' => 'mypass',
'ssl' => 'tls',
'port' => 587,
);
如果有效,你以前版本的问题应该是你的php.ini文件中没有启用openssl