Bonjour,

Je rencontre un problème sur mes sites depuis peu avec la réception d'email. Voici mon script pour commencer :

Ce que je fais

private static function sendMail() {
        if ( isset( $_POST['submit'] ) ) :
            $pseudo  = Helper::secureString( $_POST['pseudo'] );
            $email   = Helper::secureString( $_POST['email'] );
            $subject = Helper::secureString( $_POST['subject'] );
            $message = Helper::secureString( $_POST['message'] );

            $validator = new Validator();
            $validator->isEmail( $email, 'Veuillez entrer une adresse valide' );
            $validator->isDiff( null, $pseudo, 'Veuillez entrer un nom valide' );
            $validator->isDiff( null, $subject, 'Veuillez entrer un sujet valide' );
            $validator->isDiff( null, $message, 'Veuillez entrer un message valide' );

            if ( empty( $validator->getFail() ) ):
                $to      = 'contact@webdeval.be';
                $headers = 'From:' . $email . "\r\n" .
                           'Reply-To:' . $email . "\r\n" .
                           'content-type: text/html; charset=utf8' . "\r\n" .
                           'X-Mailer: PHP/' . phpversion();
                $content = '<table class="full-width-container" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#eeeeee" style="width: 100%; height: 100%; padding: 30px 0 30px 0;">
            <tr>
                <td align="center" valign="top">
                    <table class="container" border="0" cellpadding="0" cellspacing="0" width="700" bgcolor="#ffffff" style="width: 700px;">
                        <tr>
                            <td align="center" valign="top">

                                <table class="container header" border="0" cellpadding="0" cellspacing="0" width="620" style="width: 620px;">
                                    <tr>
                                        <td style="padding: 30px 0 30px 0; border-bottom: solid 1px #eeeeee;" align="left">
                                            <a href="#" style="font-size: 30px; text-decoration: none; color: #000000;">' . $pseudo . ' (' . $email . ') vous a contacté le ' . date( "d/m/Y" ) . '</a>
                                        </td>
                                    </tr>
                                </table>

                                <table class="container hero-subheader" border="0" cellpadding="0" cellspacing="0" width="620" style="width: 620px;">
                                    <tr>
                                        <td class="hero-subheader__title" style="font-size: 43px; font-weight: bold; padding: 80px 0 15px 0;" align="left"> ' . $subject . ' </td>
                                    </tr>

                                    <tr>
                                        <td class="hero-subheader__content" style="font-size: 16px; line-height: 27px; color: #969696; padding: 0 60px 90px 0;" align="left">' . $message . '</td>
                                    </tr>
                                </table>
                                </td>
                                </tr>
                                </table>
                                </td>
                                </tr>
                                </table>';
                try {
                    mail( $to, $subject, $content, $headers );
                } catch ( \Exception $e ) {
                    die( 'ERROR FROM EMAIL : ' . $e->getMessage() );
                }
                MessageFlash::setFlash( 'success', 'random' );
                Helper::redirection( '/' );

            else :
                return $validator->getFail();
            endif;
        endif;

        return null;
    }

Lorsque je suis en local (wamp), je n'ai aucun soucis. j'utilise maildev pour récupérer mes mails et cela fonctionne. Le soucis vient lorsque je transferts mes fichiers en ligne. Bien qu'ayant aucune erreur lors de l'envoi d'email via le formulaire, le message n'arrive jamais à destination (j'ai essayé avec plusieurs adresses).

Je suis sur OVH. J'ai testé d'envoyer des mails via gmail et d'en envoyer via la webmail d'OVH intégrée, cela fonctionne. Donc je suppose que le problème vient de moi.

Je précise cependant que sur un autre site plus vieux, mes emails fonctionnaient parfaitement (et c'est le même code) jusqu'à aujourd'hui où apparemment cela ne marche plus non plus.

Quelqu'un aurait une idée ? Merci d'avance.

EDIT : j'ai reçu tous les mails en une fois, à la même heure. Soit 3h après leur envoi. Une idée de ce temps d'attente ?

2 réponses


Tu es sur OVH mutualisé ou dédié?
Tu t'envoie un mail genre de mondomaine.com vers monemail@mondomaine.com ?

Salut woozy,

Alors, je suis sur un mutualisé. Pour ce qui est du mail, j'envoie depuis un compte gmail sur un @mondomaine.com