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 :

PHPMailer et Could not load language file


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut PHPMailer et Could not load language file
    Bonsoir,

    je suis en train de reprendre un site web ; il y a dedans un envoi de mail ; je me suis dit, pour faire ça, autant utiliser phpmailer plutôt que la fonction mail() ; avant de coder la fonction qui envoie le mail, je fais une fonction de test de phpmailer, en gros une fonction censée envoyer un mail à moi-même. Or, j'obtiens le message d'erreur du titre ; pourquoi ?

    Code php : 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
    <?php
    header('Content-type: text/html; charset=UTF-8');
    error_reporting(E_ALL);
    ini_set('display_errors','1');
     
    require_once "phpmailer/class.phpmailer.php";
    $mail = new PHPmailer(); 
     
    $mail->SetLanguage('en','language/phpmailer.lang-en.php'); //j'ai vérifié : ce fichier existe bien...
    $mail->SMTPDebug = 2;
    $mail->charset='UTF-8';
     
     
    date_default_timezone_set("Europe/Zurich");
    $mail->WordWrap = 50;
     
    $mail->From='mon_adresse_mail'; 
    $mail->AddAddress('mon_adresse_mail'); 
    $mail->AddReplyTo('mon_adresse_mail');      
    $mail->Subject=utf8_decode('Exemple trouvé sur DVP'); 
    $mail->Body=utf8_decode('testé');  //avec un caractère accentué
    if(!$mail->Send()){ //Teste si le return code est ok. 
    echo $mail->ErrorInfo; //Affiche le message d'erreur (ATTENTION:voir section 7) 
    } 
    else{      
        echo 'Mail envoyé avec succès'; 
        } 
    unset($mail);
    ?>

  2. #2
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut
    A tout hasard, si le site en question est chez OVH, je suis tombée là-dessus

    http://www.developpez.net/forums/d10...nvoi-mail-ovh/

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Merci de me répondre tard dans la nuit, mais je suis chez Evxonline et $mail->SMTPDebug = 2; et ça ne me donne aucun message. Par contre, ça me donne l'idée d'interroger leur support, très réactif, même le week-end...

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    SetLanguage demande le repertoire contenant les fichiers, pas le fichier.

  5. #5
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Merci, car grâce à ta remarque, le mail est envoyé avec succès ($mail->SetLanguage('en','language/');), par contre, il n'arrive pas...

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Que dit le debug ?

  7. #7
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Ben, rien malheureusement, et pourtant :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    header('Content-type: text/html; charset=UTF-8');
    error_reporting(E_ALL);
    ini_set('display_errors','1');
     
    require_once "phpmailer/class.phpmailer.php";
    $mail = new PHPmailer(); 
     
    //$mail->SetLanguage('en','language/phpmailer.lang-en.php');
    $mail->SetLanguage('en','language/');
    $mail->SMTPDebug = 2;
    ....

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Utilise la methode SMTP de Phpmailer plutôt.

  9. #9
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    C'est ce que je viens de faire mais toujours "mail envoyé avec succès" mais pas arrivé...

    Code php : 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
    <?php
    header('Content-type: text/html; charset=UTF-8');
    error_reporting(E_ALL);
    ini_set('display_errors','1');
     
    require_once "phpmailer/class.phpmailer.php";
    $mail = new PHPmailer();
    $mail->IsSMTP(); 
    $mail->IsHTML(true); 
    $mail->Host='mail.vercorshandisport.org'; 
     
     
     
    //$mail->SetLanguage('en','language/phpmailer.lang-en.php');
    $mail->SetLanguage('en','language/');
    $mail->SMTPDebug = 2;
    $mail->charset='UTF-8';
     
     
    date_default_timezone_set("Europe/Zurich");
    $mail->WordWrap = 50;
     
    $mail->From='mon_adresse_mail'; 
    $mail->AddAddress('mon_adresse_mail'); 
    $mail->AddReplyTo('mon_adresse_mail');      
    $mail->Subject=utf8_decode('Exemple trouvé sur DVP'); 
    $mail->Body=utf8_decode('testé');  //avec un caractère accentué
    if(!$mail->Send()){ //Teste si le return code est ok. 
    echo $mail->ErrorInfo; //Affiche le message d'erreur (ATTENTION:voir section 7) 
    } 
    else{      
        echo 'Mail envoyé avec succès'; 
        } 
    $mail->SmtpClose();	
    unset($mail);
    ?>

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu n'as toujours pas de log qui s'affiche ?

  11. #11
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Uniquement "Mail envoyé avec succès"...

  12. #12
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Moi avec ton code j'ai bien tout le log.
    Charge la classe avec son autoload plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once "phpmailer/PHPMailerAutoload.php";

  13. #13
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Je ne connais pas mais suite à une recherche sur Google, j'ai trouvé ça :
    Code php : 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
    function PHPMailerAutoload($classname)
    {
        //Can't use __DIR__ as it's only in PHP 5.3+
        $filename = dirname(__FILE__).DIRECTORY_SEPARATOR.'class.'.strtolower($classname).'.php';
        if (is_readable($filename)) {
            require $filename;
        }
    }
     
     
    if (version_compare(PHP_VERSION, '5.1.2', '>=')) {
        //SPL autoloading was introduced in PHP 5.1.2
        if (version_compare(PHP_VERSION, '5.3.0', '>=')) {
            spl_autoload_register('PHPMailerAutoload', true, true);
        } else {
            spl_autoload_register('PHPMailerAutoload');
        }
    } else {
        /**
         * Fall back to traditional autoload for old PHP versions
         * @param string $classname The name of the class to load
         */
        function __autoload($classname)
        {
            PHPMailerAutoload($classname);
        }
    }
    S'il n'y avait qu'une fonction, j'aurais essayé de la rajouter comme méthode de la classe actuelle, mais là, je sais pas quoi faire...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Could not load file or assembly
    Par Michelk12 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 20/06/2008, 13h51
  2. Could not load file or assembly 'office - Problème
    Par laszia dans le forum VB.NET
    Réponses: 4
    Dernier message: 08/12/2007, 04h50
  3. Réponses: 23
    Dernier message: 28/08/2007, 19h41
  4. [c#]Could not load file or assembly
    Par zitoun dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 08/05/2007, 17h35

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