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 :

[POO] Problème de langue avec la classe phpmailer [Fait]


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 29
    Points : 34
    Points
    34
    Par défaut [POO] Problème de langue avec la classe phpmailer
    salut à tous
    j'ai un probleme avec la classe phpmailer, je n'arrete pas d'avoir le message d'erreur suivant :
    Language string failed to load: instantiate

    quelqu'un pourrait il m'aider
    merci

  2. #2
    Membre éclairé Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Points : 846
    Points
    846
    Par défaut
    Montre le bout de code où se produit l'erreur
    Chaque problème a une solution, mais il est plus facile de répondre si le problème est correctement renseignés

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 29
    Points : 34
    Points
    34
    Par défaut probleme de langue avec la classe phpmailer
    voici le code

    <?

    require "phpmailer/class.phpmailer.php";
    $mail = new PHPmailer();
    $mail->IsMail();
    $mail->From='xx@xxx.xx';
    $mail->AddAddress('yy@yyy.yy');
    $mail->AddReplyTo('xx@xxx.xx');
    $mail->Subject='Exemple trouvé sur DVP';
    $mail->Body='Voici un exemple d\'e-mail au format Texte';
    if(!$mail->Send()){ //Teste le return code de la fonction
    echo $mail->ErrorInfo;
    }
    else{
    echo 'Mail envoyé avec succès';
    }

    unset($mail);
    ?>

  4. #4
    Membre éclairé Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Points : 846
    Points
    846
    Par défaut
    D'après ton script, je déduis que tu as utilisé le tutoriel sur phpmailer présent sur developpez.com. Tu aurais du lire le tutoriel jusqu'à la fin car il explique ton erreur.
    7. La gestion d'erreur



    PHP Mailer possède une gestion d'erreur qui lui permet de retourner un message à l'utilisateur lorsqu'une erreur se produit. L'utilisateur peut choisir la langue de son choix parmi l'Anglais, le Portugais, l'Italien et l'Allemand. La langue utilisée par défaut est l'Anglais. En tant que Francophone, vous allez probablement garder l'Anglais comme langue par défaut, le problème c'est que la fonction de PHP Mailer qui vérifie la langue à utiliser, utilise le répertoire courant comme valeur par défaut pour le chemin d'accès aux fichiers de langue. Cela a pour effet que si votre script ne se trouve pas dans le même répertoire que le fichier de la langue concernée, vous obtiendrez toujours le même message d'erreur lorsqu'une erreur se produira, ce message sera: Language string failed to load:[quelquechose]. Vous devrez donc utiliser la méthode SetLanguage() pour indiquer à PHP Mailer où trouver les fichiers contenant les messages d'erreurs dans les différentes langues.
    Chaque problème a une solution, mais il est plus facile de répondre si le problème est correctement renseignés

  5. #5
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 29
    Points : 34
    Points
    34
    Par défaut probleme de langue avec la classe phpmailer
    j'ai lu le tutoriel jusqu'à la fin et j'ai résolu le probleme du fichier du langage mais j'ai toujours le message d'erruer suivant:
    'Could not instantiate mail function.'
    merci de m'aider

  6. #6
    Membre éclairé Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Points : 846
    Points
    846
    Par défaut
    As tu bien un serveur mail sur ta machine? Si oui essaie d'envoyer un mail manuellement comme décrit dans le tutoriel.
    Chaque problème a une solution, mais il est plus facile de répondre si le problème est correctement renseignés

  7. #7
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 29
    Points : 34
    Points
    34
    Par défaut probleme de langue anc la classe phpmailer
    j'utilise easyphp 1.8, je suppose que je dois le configurer, comment faire???

  8. #8
    Membre éclairé Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Points : 846
    Points
    846
    Par défaut
    Je suppose que tu n'as donc pas de serveur mail installé, le plus simple c'est d'utiliser smtp cad dans ton code:
    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
    <?
    	require "répertoire_phpmailer/class.phpmailer.php";
    	$mail = new PHPmailer();
    	$mail->IsSMTP();
    	$mail->Host='ton_smtp';
    	$mail->From='votre@adresse';
    	$mail->AddAddress('adresse@destinataire');
    	$mail->AddReplyTo('votre@adresse');	
    	$mail->Subject='Exemple trouvé sur DVP';
    	$mail->Body='Voici un exemple d\'e-mail au format Texte';
    	if(!$mail->Send()){ //Teste le return code de la fonction
    	  echo $mail->ErrorInfo; //Affiche le message d'erreur (ATTENTION:voir section 7)
    	}
    	else{	  
    	  echo 'Mail envoyé avec succès';
    	}
    	$mail->SmtpClose();
    	unset($mail);
    ?>
    remplace ton_smtp par la valeur de celui de ton fournisseur d'accès internet, généralement c'est de la forme smtp.fournniseur.com (ex: smtp.neuf.fr, smtp.free.fr,...).
    Chaque problème a une solution, mais il est plus facile de répondre si le problème est correctement renseignés

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 18
    Points : 16
    Points
    16
    Par défaut
    Bonjour,

    J'ai une erreur en utilisant phpmailer:
    "Language string failed to load: recipients_failed.."

    J'ai essayé d'utiliser la fontion setLanguage("en"), mais cela m'affiche ce messsage:
    "Call to undefined function: setlanguage()"

    Donc je l'ai mal utilisée! Où doit l'appeler et comment?

  10. #10
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    Bonjour,

    Je reviens sur cette fameuse function.

    Mais comment faire pour ce message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Language string failed to load: instantiate
    j'ai rajouté cette ligne dans mon code mais je ne comprends pas trop le problème (enfin jsuis nul mais bon ça faut pas le dire)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SetLanguage('en', $lang_path = "");
    la fonction associé :

    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
     
        function SetLanguage($lang_type, $lang_path = "") {
            if(file_exists($lang_path.'phpmailer.lang-'.$lang_type.'.php'))
                include($lang_path.'phpmailer.lang-'.$lang_type.'.php');
            else if(file_exists($lang_path.'phpmailer.lang-en.php'))
                include($lang_path.'phpmailer.lang-en.php');
            else
            {
                $this->SetError("Could not load language file");
                return false;
            }
            $this->language = $PHPMAILER_LANG;
     
            return true;
        }
    c'est du phpmailer pour resituer le problème et je n'arrive pas à le régler....
    j'ai ce message d'erreur ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Call to undefined function SetLanguage()
    Mais elle est bien appelé, peut-être un erreur dans mon require ?

  11. #11
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    Maintenant, j'ai ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Could not instantiate mail function.
    Que faire ?

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

Discussions similaires

  1. Envoi mail avec la class phpmailer
    Par Pifon dans le forum Langage
    Réponses: 13
    Dernier message: 14/08/2014, 17h46
  2. [POO] Problème avec les classes
    Par peypey dans le forum Langage
    Réponses: 8
    Dernier message: 03/05/2006, 15h05
  3. [PHPMailer] problème avec la classe phpmailer
    Par sansouna24 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 08/04/2006, 16h51
  4. [VB6]probleme de langue avec word
    Par nsanabi dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 12/03/2006, 17h46
  5. Comment changer la langue avec 2 TMainMenu ?
    Par aliwassem dans le forum Composants VCL
    Réponses: 1
    Dernier message: 20/01/2006, 18h50

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