L'envoi de Mail à l'aide de CakePHP 3.0

Je suis en train d'élaborer un site web avec la nouvelle version 3.0 du Framework CakePHP. Je suis en train de travailler sur localhost et aimerais envoyer un e-mail après que l'utilisateur a rempli un formulaire. Ci-dessous est le code dans mon contrôleur pour envoyer l'e-mail.

public function index(){
    if ($this->request->is('post'){
       $email = new Email();
       $email->from([$this->request->data["sender"] => "Sender"]
             ->to("[email protected]")
             ->subject($this->request->data["Subject"])
             ->send($this->request->data["message"]);
    }
}

Lorsque ce code est exécuté rien ne se passe, pas d'erreur, pas de message dans ma boîte aux lettres. J'ai vu qu'il existe dans cakephp3.0 une classe appelée DebugTransport mais je ne sais pas comment l'utiliser pour déboguer mon code. Quelqu'un a déjà utiliser ?

  • Je pense que vous ne pouvez pas utiliser l'e-mail() en local, essayez de le télécharger sur un site en ligne. 🙂 btw, je me souviens de mon ami pouvez envoyer un e-mail à l'aide de localhost xampp, peut-être que cela dépend de votre apache ou quelque chose. 🙂
  • vous pouvez utiliser le protocole smtp pour envoyer des messages à partir de localhost
  • Veuillez toujours mentionner votre version de CakePHP! Si vous utilisez une récente 3.x release, alors cela devrait échouer dur avec une exception en ce qui concerne le manque de transport. Aussi votre code est manquante de clôture ( pour la from() appel, assurez-vous que ce problème n'est pas présent dans votre code. Cela dit, veuillez consulter la documentation sur comment faire pour configurer un transport pour la classe email (remarque: l'utilisation de base de la section est manquante qui).
  • Il y a beaucoup plus d'options pour l'envoi de courriels à partir de localhost, ex: Mailgun, Mandrill, etc
InformationsquelleAutor Snnopy_87 | 2014-10-15