在yii中,我使用邮件程序扩展创建actionEmail方法。它将接受四个参数:FromEmail,ToEmail,Subject和Message。为了检查输出,我发送参数的硬编码值。
public function actionCreate($FromEmail='abc@gmail.com',$ToEmail='xyz@gmail.com',$Subject='Project',$Message='Hiee')
{
//using mailer extension
$mailer = Yii::createComponent('application.extensions.mailer.EMailer');
$mailer->IsSMTP();
$mailer->IsHTML(true);
$mailer->SMTPAuth = true;
$mailer->SMTPSecure = "ssl";
$mailer->Host = "smtp.gmail.com";
$mailer->Port = 465;
$mailer->CharSet = 'UTF-8';
//$mailer->Username = "abc@shailani.com";
$mailer->Password = "abc";
$mailer->From = $FromEmail;
$mailer->FromName = "Balaee.com";
//$mailer->AddAddress('shilpakirad@gmail.com');
$mailer->AddAddress($ToEmail);
$mailer->Subject = $Subject;
$mailer->IsHTML(true);
// $html = $this->renderPartial('myview',array('content'=>'Hello World'),true);
$mailer->Body=$Message;
if($mailer->Send()) {
echo "Please check mail";
}
else {
echo "Fail to send your message!";
}
}
我在用户控制器中创建了这个方法。但它没有执行。请帮帮我
答案 0 :(得分:2)
如果为动作功能指定参数,则这些参数定义必须通过GET或POST指定的参数。通常,除非指定了所有参数,否则无法将任何内容路由到此函数。在您的情况下可以,因为您正在为它们分配默认值。您应该能够使用正常的url格式调用该函数(例如index.php /?r = controller / email)。可以使用相同的URL指定自定义值: 的index.php / R =控制器/电子邮件&安培;主题=测试+电子邮件
也许从检查错误日志开始,看看是否有任何输出。 如果没有,我会评论整个功能内容,只是做一个回声或什么。这样你至少可以确保调用该函数。然后你可以重新添加代码,也许是分片,看看是否一切都在运行。