Bonjour à tous !
sa fais un petit moment que je bloque sur mon site, car il est impossible d'envoyer des email
Voici donc mon controller
<?
public function felicitation(){
App::uses('AppController', 'Controller');
App::uses('CakeEmail', 'Network/Email');
$email = new CakeEmail('default');
$email->transport('smtp');
$email->from('analyse.dossier@ap2sp.org')
->to(['dsigner1708@gmail.com' => 'My Website'])
->subject('Contact')
->send('test mail');
debug($this->request->data);die();
}
}
?>
Ensuite mon fichier email.php
<?
public $default = array(
'transport' => 'SMTP',
'host' => 'myhost',
'port' => 465,
'timeout' => 30,
'username' => 'domaine@domaine.com',
'password' => '*********',
'charset' => 'utf-8',
'headerCharset' => 'utf-8',
);
?>
malheuresement il affiche l'erreur suivante
Network is unreachable
Error: An Internal Error Has Occurred.
Stack Trace
CORE/Cake/Network/Email/SmtpTransport.php line 155 → CakeSocket->connect()
CORE/Cake/Network/Email/SmtpTransport.php line 95 → SmtpTransport->_connect()
CORE/Cake/Network/Email/CakeEmail.php line 1173 → SmtpTransport->send(CakeEmail)
APP/Controller/OnlinesController.php line 114 → CakeEmail->send(string)
[internal function] → OnlinesController->felicitation()
CORE/Cake/Controller/Controller.php line 491 → ReflectionMethod->invokeArgs(OnlinesController, array)
CORE/Cake/Routing/Dispatcher.php line 193 → Controller->invokeAction(CakeRequest)
CORE/Cake/Routing/Dispatcher.php line 167 → Dispatcher->_invoke(OnlinesController, CakeRequest)
APP/webroot/index.php line 111 → Dispatcher->dispatch(CakeRequest, CakeResponse)
Merci d'avance pour le temps pris à lire mon message....
Bonsoir.
Ton principal problème est que tu ne charges pas les classes correctement.
Les App::uses
, n'ont rien à faire dans une fonction, tu devrais plutôt avoir quelque chose du genre :
<?php
App::uses('AppController', 'Controller');
App::uses('CakeEmail', 'Network/Email');
class ContactController extends AppController {
public function felicitation()
{
$email = new CakeEmail('default');
$email->transport('smtp');
$email
->from('analyse.dossier@ap2sp.org')
->to(['dsigner1708@gmail.com' => 'My Website'])
->subject('Contact')
->send('test mail');
}
}
Si après ça tu as malgrès tout toujours un problème, ça peut venir de plusieurs choses, comme par exemple le fait que tu reçoives les email en SPAM, ou un problème de configuration.
Merci de me repondre si rapidement.
J'ai appliqué les modifications, mais l'erreur ne change pas...
<?php
App::uses('AppController', 'Controller');
App::uses('CakeEmail', 'Network/Email');
class ContactController extends AppController {
public function felicitation()
{
$email = new CakeEmail('default');
$email->transport('smtp');
$email
->from(['analyse.dossier@ap2sp.org' => 'My Website'])
->to('dsigner1708@gmail.com')
->subject('Contact')
->send('test mail');
}
}
en fait, j'essaie d'envoyer un mail depuis mon site qui est marquer dans le from en esperant avoir bien compris ce que vous vouliez dire...
j'ai essayé un plugin "PHPMailer" et voici l'erreur que je reçoit
2017-10-05 11:48:35 SERVER -> CLIENT: 220 smtp.gmail.com ESMTP b30sm15742902ede.1 - gsmtp
2017-10-05 11:48:35 CLIENT -> SERVER: EHLO analyse.oukaley.ap2sp.org
2017-10-05 11:48:35 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [213.246.62.66] 250-SIZE 35882577 250-8BITMIME 250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250 SMTPUTF8
2017-10-05 11:48:35 CLIENT -> SERVER: AUTH LOGIN
2017-10-05 11:48:35 SERVER -> CLIENT: 334 VXNlcm5hbWU6
2017-10-05 11:48:35 CLIENT -> SERVER: Z25hZ29hbGJlcm15MTk2MEBnbWFpbC5jb20=
2017-10-05 11:48:35 SERVER -> CLIENT: 334 UGFzc3dvcmQ6
2017-10-05 11:48:35 CLIENT -> SERVER: cmllbmFmYWlyZWRlMDA3
2017-10-05 11:48:36 SERVER -> CLIENT: 534-5.7.14 Please log in via your web browser and 534-5.7.14 then try again. 534-5.7.14 Learn more at 534 5.7.14 https://support.google.com/mail/answer/78754 b30sm15742902ede.1 - gsmtp
2017-10-05 11:48:36 SMTP ERROR: Password command failed: 534-5.7.14 Please log in via your web browser and 534-5.7.14 then try again. 534-5.7.14 Learn more at 534 5.7.14 https://support.google.com/mail/answer/78754 b30sm15742902ede.1 - gsmtp
2017-10-05 11:48:36 CLIENT -> SERVER: QUIT
2017-10-05 11:48:36 SERVER -> CLIENT: 221 2.0.0 closing connection b30sm15742902ede.1 - gsmtp SMTP connect() failed
Quelqu'un aurait il une idée ?
Ton erreur est assez explicite, ton mot de passe semble incorrecte. C'est possible que tu aies à ajouter une application à ton compte Google.
Merci pour vos réponses.
@Kareylo le mot de passe est le bon, maintenant quand vous parlez d'ajouter une application j'avoue que je ne vois pas trop.
@Lartak les protocoles POP et IMAP s'activent comment (j'avoue que c'est la première fois que j'utilise PHPMailer)