IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Mail] mail() chez free ??


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 90
    Points : 39
    Points
    39
    Par défaut [Mail] mail() chez free ??
    Bonjour,

    je voudrais envoyer un email pour confirmer un enregistrement d'inscription en ligne.

    Je précise que le site est hébergé chez FREE.FR et j'ai lu beaucoup de chose sur la fonction mail() chez eux (marche ou marche pas au final ?). J'essaie également de joindre un fichier texte à ce mail.

    En tout cas j'ai fait mon code avec et la vérification me dit que le mail est envoyé mais je ne le reçois pas. De plus j'ai l'avertissement suivant d'affiché :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Warning:  mail(): ligne incorrect dans process_login!  in /var/www/free.fr/2/f/vvb44/include/Email.php on line 109
    Je vous donne le code de mon fichier email.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
    function AjouterFichierJoint($lnom,$lprenom,$lemail,$header)
    {
        // On choisi généralement de construire une frontière générée aleatoirement
        // comme suit. (REM: je n'en connais pas la raison profonde)
        $boundary = "-----=".md5(uniqid(rand()));
     
        //    Version du format MIME utilisé
        $header .= "MIME-Version: 1.0\r\n";
        //    Type de contenu. Ici plusieurs parties de type different "multipart/mixed"
        $header .= "Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
        $header .= "\r\n";
     
        $msg = "Je vous informe que ceci est un message au format MIME 1.0 multipart/mixed.\r\n";
     
        // Chaque partie du message est séparé par une frontière
        $msg .= "--$boundary\r\n";
        // Et pour chaque partie on en indique le type
        $msg .= "Content-Type: text/plain; charset=\"iso-8859-1\"\r\n";
        // Et comment il sera codé
        $msg .= "Content-Transfer-Encoding:8bit\r\n";
        // Il est indispensable d'introduire une ligne vide entre l'entête et le texte
        $msg .= "\r\n";
        // Enfin, on peut écrire le texte de la 1ère partie
        $d  =date("d-m-Y");    //date du jour
        $h = date("H:i");    //heure d el'inscription
        $msg .= "le $d à $h : $lnom $lprenom";
        $msg .= "\r\n";
     
        // Tout d'abord lire le contenu du fichier
        $file = "/securite/inscription.txt";
        $fp = fopen($file, "rb");   // b c'est pour les windowsiens
        $attachment = fread($fp, filesize($file));
        fclose($fp);
     
        $attachment = chunk_split(base64_encode($attachment));
     
        // Ne pas oublier que chaque partie du message est séparé par une frontière
        $msg .= "--$boundary\r\n";
        // Et pour chaque partie on en indique le type
        $msg .= "Content-Type: image/gif; name=\"$file\"\r\n";
        // Et comment il sera codé
        $msg .= "Content-Transfer-Encoding: base64\r\n";
        // fichier si possible affiché dans le corps du mail
        $msg .= "Content-Disposition: inline; filename=\"$file\"\r\n";
        // Il est indispensable d'introduire une ligne vide entre l'entête et le texte
        $msg .= "\r\n";
        // C'est ici que l'on insère le code du fichier lu
        $msg .= $attachment . "\r\n";
        $msg .= "\r\n\r\n";
     
        // voilà, on indique la fin par une nouvelle frontière
        $msg .= "--$boundary--\r\n";
     
        //Création du tableau à retourner comme résultat.
        $temp['message'] = $msg;
        $temp['headers'] = $headers; 
     
        return $temp;
    }
     
    function EnvoyerEmail($ln,$lpr,$lm)
    {
        // Declaration des entetes
        $entetes = 'From: vertou-volleyball@neuf.fr'."\n\r" ;    //origine du mail
        $entetes .= 'Reply-To:vertou-volleyball@neuf.fr'."\n\r";
     
        //Définition des variables de configuration de la fonction mail manquantes
        $to = 'vertou-volleyball@neuf.fr';    //destinataire du mail
        $sujet = 'Nouvelle inscription au VVB enregistrée !';
     
        //création du mesage et attachement du fichier à joindre.
        $tp = AjouterFichierJoint($ln,$lpr,$lm,$entetes);
     
        //Envoie de l'email
        $message = $tp['message'];
        $head  =$tp['headers'];
        //$message = 'on teste ';
        $rep = mail($to,$sujet,$message,$entetes);
     
        return $rep;
    }

    Je vous remercie d'avance.

    Eric

  2. #2
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut
    Le script "protomail" serait une des solutions pour envoyer des mails de chez free.

  3. #3
    Futur Membre du Club
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 9
    Points : 8
    Points
    8
    Par défaut
    Chez free, il ne faut pas plutot utiliser la fonction email() au lieu de mail() ?

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    protomail() ? je ne connais pas ce script !!

    Sinon en ce qui concerne les fonctions mail() et email(), et bien je ne sais pas car j'ai lu que les 2 fonctionnent sur tous type de forum, avec des contracdictions permanentes.

    Je perds donc un peu la boule ! lol

  5. #5
    Rédacteur

    Homme Profil pro
    Geek entrepreneur
    Inscrit en
    Novembre 2004
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Geek entrepreneur

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 224
    Points : 2 373
    Points
    2 373
    Par défaut
    La fonction mail marche chez eux. Je l'utilise dans un script.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    ok c'est déjà bon à savoir.

    mais alors dans mon cas ou est mon erreur ? Meme quand je veux envoyer un mail simple ça ne passe pas. Toujours le même avertissement !

    revoici un code plus simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $entetes = 'From: vertou-volleyball@neuf.fr'."\n\r" ;    //origine du mail
    $to = 'vertou-volleyball@neuf.fr';    //destinataire du mail
    $sujet = 'Nouvelle inscription au VVB enregistrée !';
    $message = "essai";
    $rep = mail($to,$sujet,$message,$entetes);
    Dans rep la valeur de retour est TRUE, comme si le mail été envoyé mais il ne l'est pas

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 90
    Points : 39
    Points
    39
    Par défaut
    Après de nouvelle recherche, la fonction mail() a bien été réactivée chez FREE. Je n'ai donc normalement pas besoin de protomail().

    Cependant, je ne reçois toujours pas les mails qui sont données comme envoyés et l'avertissement suivant s'affiche toujours :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Warning:  mail(): ligne incorrect dans process_login!  in /var/www/free.fr/2/f/vvb44/include/Email.php on line 123
    Ou peut-on trouver une description de cet avertissement ?

    Existe-t-il un moyen ficable d'envoyer des mails de chez FREE ?
    Merci

Discussions similaires

  1. [MySQL] Réinitialisation envoi de mail chez FREE
    Par Judgelolo dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 23/07/2012, 11h34
  2. [Mail] Problème d'envoi chez Free
    Par Djludo dans le forum Langage
    Réponses: 6
    Dernier message: 28/09/2008, 23h02
  3. Formulaire d'envoi de mail chez Free et vérification
    Par Horse_pyro dans le forum Langage
    Réponses: 8
    Dernier message: 03/05/2008, 01h44
  4. [Mail] Contourner quota mail chez free.fr?
    Par dimitrimm972 dans le forum Langage
    Réponses: 2
    Dernier message: 25/04/2007, 10h49
  5. Envoi d'un mail en PHP chez free
    Par noutnout53 dans le forum Langage
    Réponses: 7
    Dernier message: 25/08/2006, 18h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo