Votre app/config/Email.
class EmailConfig { public $gmail = array( 'port' => '465', 'timeout' => '300', 'host' => 'ssl://smtp.gmail.com', 'username' => '<your_email>@gmail.com', 'password' => '<you_password>', 'transport' => 'Smtp' ); }
votre fichier = app/contrôleur/appController.php insérer cette fonction
public function sendEmail($type, $options){
try {
$Email = new CakeEmail($type);
$Email->config($options);
$Email->template = "email_confirmation";
$Email->emailFormat('html');
//$this->idCrudRash = $options;
$Email->send();
} catch (SocketException $e) {
die('Erro ao enviar email:'. $e->getMessage());
$this->log(sprintf('Erro ao enviar email: %s', $e->getMessage()));
}
}
pour l'utilisateur: app/contrôleur/contato.php
$options = array( 'emailFormat' => 'html', 'from' => array( $config['email_noanswer'] => $config['site_name'] ), 'subject' => 'Confirmação de Cadastro', 'to' => $this->request->data['User']['email'], //'template' => 'default', 'template' => 'email_confirmation', 'viewVars' => array( 'title_for_layout' => 'Confirmação de Email ' . $config['site_name'], 'name' => $this->request->data['User']['name'], 'email' => $this->request->data['User']['email'], //'cpf' => base64_encode($this->request->data['User']['cpf']), 'site_name' => $config['site_name'], ), ); $this->sendEmail('gmail', $options);
Il est un exemple dans la [documentation CakePHP] (http://book.cakephp.org/2.0/en/core-utility-libraries/email.html#configuration) en utilisant Gmail, n'échouer comme bien ? – Nasreddine
Votre adresse e-mail ne contient pas de domaine (par exemple .com), essayez d'ajouter un domaine. – pbond
Cela fonctionne déjà, j'ai configuré mon serveur postfix et redirigé vers gmail, l'exemple gmail de cakephp2 n'a pas fonctionné pour moi. Quoi qu'il en soit, merci les gars =) – silgon