2010-09-16 4 views
0

Je crée une fonction pour envoyer un email de notification à un utilisateur en utilisant le phpMailer lib. Cela fonctionne très bien si je viens d'envoyer un e-mail ou d'envoyer plusieurs courriels à l'intérieur de la classe. Mais si fairephpMailer page blanche lors de la création de plusieurs instances de la classe

for($i=0;$i<3;$++) 
{ 
    $notification = new $Notification(); 
    $notification->notify(...); 
} 

Il une page blanche retour précis ou chiffré. Pas d'erreurs, de messages, rien. Avant de demander, j'ai activé display_errors.

Que peut-il être?

Il fonctionne très bien si j'ai juste une instance de phpmailer comme ceci:

$phpmailer = new PHPMailer($exceptions = true); 
(...) 

     for($i=0;$i<3;$i++) 
     { 
      $phpmailer->AddAddress('address'); 
      $phpmailer->Subject = ""; 
      $phpmailer->Body = "sasa"; 

      $phpmailer->Send(); 
      $phpmailer->ClearAllRecipients(); 
     } 
+0

Dans cet exemple, il envoie 2 e-mails, puis meurt. – brpaz

Répondre

1

Retirez le $ de new Notification:

for($i=0;$i<3;$++) 
{ 
    $notification = new Notification(); 
    $notification->notify(...); 
} 

new $Notification va créer une nouvelle instance de la valeur de la variable $Notification . Cela ne fonctionnerait que si $Notification contient vraiment « Notification » (en supposant que votre classe est nommée « Notification »)

Si vous avez activé display_errors dans votre script PHP, mais le serveur, il a désactivé par défaut, les erreurs ont gagné » t être affiché s'il y a une erreur de syntaxe dans votre script.

+0

Désolé, c'était une erreur de frappe. J'ai adapté mon code pour le mettre ici – brpaz

+0

Je vois un bloc 'try'. Où est la «capture»? Comment avez-vous activé 'display_errors'? Avec .htaccess/php.ini ou dans le script PHP? Voir la publication éditée. – Lekensteyn

+0

Je travaille chez localhost. Aussi j'utilise Symfony Framework dans un environnement de développement pour qu'il affiche toutes les exceptions et les erreurs par défaut. – brpaz

Questions connexes