I’m trying to send an email from AppController in my CakePHP 2.0 app. It works fine if I send it from the PagesController, but I need to be able to send from AppController as well.
I have:
function sendSystemEmail($to = EMAIL_CONTACT, $from = EMAIL_FROM, $subject = null, $body = null, $view = null, $vars = null) {
App::uses('CakeEmail', 'Network/Email');
$email = new CakeEmail();
$email->viewVars(array(
'body' => $body,
'vars' => $vars
));
$email->template($view)
->emailFormat('html')
->from($from)
->to($to)
->subject($subject)
->send();
return;
}
When I use this, I don’t get any errors, but the email doesn’t arrive. I can’t see that there’s any different between this and the code I have in PagesController, so I’m assuming that there’s something that AppController doesn’t have access to maybe? I can’t figure out what though!
Sharon, you’re not putting the configuration method.. this parameter can put in the constructor of classEmail too, this way..
or
and you need to define the connection here..
./app/Config/email.php