Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1513 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Symfony - Envoie d'e-mail

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Symfony - Envoie d'e-mail

n°2044461
dwogsi
Défaillance cérébrale...
Posté le 26-12-2010 à 23:30:56  profilanswer
 

Bonjour,
 
Je rencontre quelques problèmes pour envoyer des mail avec symfony, ou plus exactement pour ne pas les envoyer !
 
Ce que je fais dans mon action :
 

Code :
  1. // Create message object
  2. $message = $this->getMailer()->compose(
  3.  array($game->getEmailNoreply() => $game->getName()),
  4.  $member->getEmail(),
  5.  $game->getName().' : Confirmation inscription',
  6.  $this->getPartial('mail/registerConfirmation', $mailContext)
  7. );
  8.  
  9. // Send
  10. $this->getMailer()->send($message);


 
Pour faire simple, j'essaie simplement d'envoyer un bête email de confirmation d'inscription.
 
Mon factories.yml pour la dev est le suivant :
 

dev:
  mailer:
    param:
      delivery_strategy: none


 
 
Je suis bien sur frontend_dev.php.
 
Lorsque je valide mon formulaire et que mon email est censé partir, je reçois systématiquement l'erreur suivante :
500 | Internal Server Error | Swift_TransportException
 
L'erreur provient du code suivant :
 
 

# at ()
in SF_ROOT_DIR\lib\vendor\symfony\lib\vendor\swiftmailer\classes\Swift\Transport\StreamBuffer.php line 235 ...
 
232.     }
233.     if (!$this->_stream = fsockopen($host, $this->_params['port'], $errno, $errstr, $timeout))
234.     {
235.       throw new Swift_TransportException(
236.         'Connection could not be established with host ' . $this->_params['host'] .
237.         ' [' . $errstr . ' #' . $errno . ']'
238.         );


 
 
Ceci-dit, je ne comprends pas pourquoi il essait de contacter un SMTP alors que je lui demande de ne pas envoyer les mails lorsque je suis en dev.
J'ai l'impression qu'il ignore ce que je configure dans mon factorie.yml.
Quelqu'un a une idée de la source de mon problème ?
 
Mon projet n'étant actuellement pas en prod, je ne l'ai pas testé dans ce contexte.
 
Merci :jap:


Message édité par dwogsi le 27-12-2010 à 09:37:32

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
mood
Publicité
Posté le 26-12-2010 à 23:30:56  profilanswer
 

n°2044587
Tirkyth
Posté le 27-12-2010 à 16:09:03  profilanswer
 

Problème classique, que tout le monde rencontre.
Le delivery strategy sert à établir la stratégie pour délivrer les mails. Donc il contacte le "transporteur" (un serveur SMTP dans ton cas), et selon la stratégie définie, il va faire les choses différemment. Mais il contacte en premier lieu le transporteur tout de même.

 

Si tu ne veux pas qu'il contacte le transporteur, tu dois aussi explicitement le demander en mettant dans ton factories.yml :

Code :
  1. dev:
  2.  mailer:
  3.    param:
  4.      delivery_strategy: none
  5.      transport:
  6.        class: Swift_NullTransport


Message édité par Tirkyth le 27-12-2010 à 16:11:33

---------------
Mon Feedback !
n°2044865
dwogsi
Défaillance cérébrale...
Posté le 28-12-2010 à 19:52:05  profilanswer
 

Effectivement ça règle le problème. Merci.
J'avais fait pas mal de recherches avant de venir poser ma question ici et, même si le problème est classique, je n'avais pas trouvé la solution.
 
Par contre, maintenant je test une configuration différente, pour faire partir mes mails :
 


dev:
    class: sfMailer
    param:
      logging: %SF_LOGGING_ENABLED%
      charset: %SF_CHARSET%
      delivery_strategy: realtime
      transport:
        class: Swift_SmtpTransport
        param:
          host:       smtp.gmail.com
          port:       465
          encryption: tls
          username:   contact@xxxxxxxx.xx
          password:   *************


 
J'essaie donc simplement d'utiliser la SMTP GMail et je reçoit encore la fameuse erreur :
 
500 | Internal Server Error | Swift_TransportException|
 
Donc pas de connexion au serveur SMTP. Ces paramètres sont valides et fonctionnent bien sur d'autres projets.
 
Pour le coup, ça vient peut être de la config de ma machine...
 
Enfin si vous pouvez juste me dire si j'ai fait un erreur dans la config de symfony ? Merci.


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°2045084
Tirkyth
Posté le 30-12-2010 à 09:49:28  profilanswer
 

Peux-tu essayer de remplacer le numéro de port par 587 ?


---------------
Mon Feedback !
n°2045229
dwogsi
Défaillance cérébrale...
Posté le 30-12-2010 à 19:04:00  profilanswer
 

J'avais en fait un petit problème dans ma configuration. Celle qui fonctionne bien est la suivante :

port:       465
encryption: ssl


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°2045261
CyberDenix
Posté le 30-12-2010 à 23:04:45  profilanswer
 

Heureusement qu'on a inventé Symfony pour envoyer des e-mails.
Je me demande comment on faisait avant... ?  :lol:   :lol:   :lol:

Message cité 1 fois
Message édité par CyberDenix le 30-12-2010 à 23:05:00

---------------
Directeur Technique (CTO)
n°2045301
dwogsi
Défaillance cérébrale...
Posté le 31-12-2010 à 09:48:01  profilanswer
 

CyberDenix a écrit :

Heureusement qu'on a inventé Symfony pour envoyer des e-mails.
Je me demande comment on faisait avant... ?  :lol:   :lol:   :lol:


Gné ?


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Symfony - Envoie d'e-mail

 

Sujets relatifs
Upload fichier et notification par mail !Envoie d'une pièce jointe en PHP avec mail()...presque...
SYMFONY - Champ de vérification Captcha pour un formulaireEnvoi mail plusieurs destinataires (excel)
envoyer lien download ds mail[VBA/LOTUS]: écrire mail avec fichier attaché + JPEG intégré au corps
Formulaire a envoyer / Mail vide / html + phpZend ou Symfony
Envoi de mail en parallele via ajax ? 
Plus de sujets relatifs à : Symfony - Envoie d'e-mail


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR