Bonjour à tous,

Jusqu'à présent, j'utilise la methode mail() pour l'envoi des e-mail

App::uses('CakeEmail','Network/Email');
                $mail = new CakeEmail();
                #$mail->config('smtp');
                // Confirmation
                $mail->from($this->Session->read('Site.email'))
                    ->to($data'Contact']'email'])
                    ->subject($this->Session->read('Site.name').' - '.__('Votre message nous a bien été envoyé'))
                    ->emailFormat('both')
                    ->template('emailconfirmation')
                    ->viewVars(array('firstname'=>$data'Contact']'firstname'],'lastname'=>$data'Contact']'lastname'],'content'=>$data'Contact']'content']))
                    ->send();

Et ca fonctionne.

Mais j'aimerais utiliser maintenant le protocole Smtp.
Pour cela, j'utilise le meme code que ci-dessus, saud que j'ai decommenté

#$mail->config('smtp');

App::uses('CakeEmail','Network/Email');
                $mail = new CakeEmail();
                $mail->config('smtp');
                // Confirmation
                $mail->from($this->Session->read('Site.email'))
                    ->to($data'Contact']'email'])
                    ->subject($this->Session->read('Site.name').' - '.__('Votre message nous a bien été envoyé'))
                    ->emailFormat('both')
                    ->template('emailconfirmation')
                    ->viewVars(array('firstname'=>$data'Contact']'firstname'],'lastname'=>$data'Contact']'lastname'],'content'=>$data'Contact']'content']))
                    ->send();

Aussi, je suis allé dans le fichie app/Config/email.php et j'ai ajouté cette config

public $smtp = array(
        'transport' => 'Smtp',
        'host' => 'smtp.dom.net',
        'port' => 587,
        'timeout' => 30,
        'username' => 'info@dom.net',
        'password' => 'secret',
        'client' => null,
        'log' => true,
        'charset' => 'utf-8'

    );

Je suis un peu largué.

Quand j'envoi le formulaire, j'ai ce message d'erreur

An Internal Error Has Occurred.
An Internal Error Has Occurred.
Error: An Internal Error Has Occurred.

Auriez-vous une moindre idée qui me mettrait sur la piste?

5 réponses


Hello, avez-vous une idée?
Je viens de constater un truc, dams core.php, je msi debug à 1 et j'ai ce message intérressant

Warning (2): glob() has been disabled for security reasons [CORE/Cake/basics.php, line 490]
Warning (2): array_merge() [function.array-merge]: Argument #1 is not an array [CORE/Cake/basics.php, line 492]

Je vais faire une recherche sur l'histoire du Glob, mais si vous aveuz une idée entre temps, ca serait cooool!!

Salut,

Essaie esaie:

$mail = new CakeEmail('smtp');

Ainsi tu appel directement ta variable smtp configurer dans app/Config/email.php

En espérant que ça aide!

Hello, merci pour ton aide, mais j'ai deja essayé ceci sans succes

Salut!

Je viens de remarquer autre chose également.

Tu as peut-être déjà corriger mais dans email.php tu écris 'log' => ture, au lieu de 'log' => true, ...

Ensuite, peut-être voir aussi au niveau de autentification SMTP de ton FAI...

Bon dèv'!

Ho oui, mais j'ai deja corrigé ca. desolé d'avoir mis une mauvaise information. Je corrige