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 :

Envoi automatique de mail depuis un PC


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 77
    Par défaut Envoi automatique de mail depuis un PC
    Bonjour,

    Je dois envoyer occasionnellement quelques mails de manière automatique depuis un PC au moyen de la fonction "mail()" de PHP en utilisant pour cela EasyPHP-5.3.1 en local (box internet, Windows 10 édition familiale).

    Dans un premier temps j'ai installé "sendmail" (dans "C:\Programmes (x86)\Dipisoft\SendMail") à partir du téléchargement "https://telecharger.tomsguide.fr/Sen...0313-2037.html", mais cela ne fonctionne pas et je ne vois pas pourquoi :
    Nom : f1.gif
Affichages : 661
Taille : 14,9 Ko
    Nom : f2.gif
Affichages : 678
Taille : 15,1 Ko
    La fonction "mail()" renvoie bien TRUE, mais le mail n'arrive jamais dans la messagerie. Résultat affiché à l'écran :
    Test envoi email PHP
    Retour = TRUE

    Les sources des fichiers "index.php", "php.ini" et "sendmail.ini" sont joints à cette discussion dans le fichier "EnvoiAutoMail.pdf".

    Dans un deuxième temps j'ai téléchargé un wamp/sendmail chez "https://www.webtolosa.com/2017/09/19...ec-wampserver/" que j'ai simplement recopié, après dézippage, dans le répertoire "C:\wamp\sendmail" que j'ai créé moi-même :
    Nom : f3.gif
Affichages : 614
Taille : 15,7 Ko
    Cela fonctionne encore moins, le retour de la fonction "mail()" n'est pas affiché à l'écran, l'écran est affiché avec le message "Adresse introuvable" dans le titre de l'onglet ("Hum, nous ne parvenons pas à trouver ce site . . .") et je ne comprends pas davantage.
    (entre-temps j'ai modifié "php.ini", pour remplacer "sendmail_path = 'C:\Programmes (x86)\Dipisoft\SendMail\SenMail.exe -t -i'" par "sendmail_path = 'C:\wamp\sendmail\senmail.exe -t -i'")

    J'ai aussi testé chacun des deux "sendmail" ci-dessus, en remplaçant l'adresse de messagerie hotmail par une adresse de messagerie free (en remplaçant "smtp.live.com" par "smtp.free.fr"), mais sans plus de succès.

    Quelqu'un a-t-il une petite idée pourquoi cela ne fonctionne pas ?

    Merci d'avance pour votre aide.

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2009
    Messages : 35
    Par défaut
    Bonjour
    Avec la class PHPMailer 5.26 ça fonctionne en changeant un paramètre dans php.init je crois
    y a de la doc. sur internet à ce sujet

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 77
    Par défaut Persévérons encore un peu
    Bonjour,

    Merci à resus, je n'ai pas encore testé avec "PHPMailer 5.26".
    Je veux d'abord voir si j'arrive à faire fonctionner une de mes deux solutions initiales ("Dipisoft" ou "wamp").

    J'ai déjà fait un tas de tests en essayant différents paramètres (Ports : 25, 465, 587. Messageries : hotmail, free, sfr).
    Avec la première solution (Dipisoft), la fonction "mail()" retourne toujours TRUE mais l'email n'est jamais reçu.
    Avec la deuxième solution (wamp), la fonction "mail()" retourne toujours FALSE (et bien entendu l'email n'est jamais reçu).

    Je suspecte un problème de FAI. Je vais poursuivre mes recherches dans les forums.

    Si vous avez une idée, n'hésitez surtout pas à nous en faire part !

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

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

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Rien n'empêche d'utiliser PHPMailer avec une de tes solutions...

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 77
    Par défaut Test avec PHPMailer
    Bonjour,

    Après avoir installé "PHPMailer", j'obtiens les messages suivants à l'exécution :
    Test envoi email PHP

    Warning: require(phpmailer\class.phpmailer.php) [function.require]: failed to open stream: No such file or directory in C:\Program Files (x86)\EasyPHP-5.3.1\www\index.php on line 9

    Fatal error: require() [function.require]: Failed opening required 'phpmailer\class.phpmailer.php' (include_path='.;C:\php5\pear') in C:\Program Files (x86)\EasyPHP-5.3.1\www\index.php on line 9

    Voici ma source "index.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
    <html>
    <head>
    <title>Essai</title>
    </head>
    <body>
    <?php
    echo 'Test envoi email PHP<br />';
     
    require('phpmailer/class.phpmailer.php'); 
     
    $mail = new PHPMailer();
    $mail->Host = 'smtp.sfr.fr';
    $mail->SMTPAuth   = true;
    $mail->Port = 25; // Par défaut
     
    // Authentification
    $mail->Username = "monAdresseMail@sfr.fr";
    $mail->Password = "monPassword";
     
    // Expéditeur
    $mail->SetFrom('monAdresseMail@sfr.fr', 'monNom monPrénom');
    // Destinataire
    $mail->AddAddress('monAdresseMail@sfr.fr', 'monNom monPrénom');
    // Objet
    $mail->Subject = 'Titre du 1er test email automatique';
     
    // Votre message
    $mail->MsgHTML('Contenu du 1er test email automatique');
     
    // Envoi du mail avec gestion des erreurs
    if(!$mail->Send())
      { echo 'Erreur : ' . $mail->ErrorInfo; }
    else
      { echo 'Message envoyé !'; } 
     
    ?>
    </body>
    </html>

    J'ai installé "PHPMailer" de la manière suivante :
    1) pour télécharger PHPMailer, je vais sur la page "https://www.connecty.fr/tutoriels/en...-phpmailer.php"
    qui explique comment faire, puis je clique sur le lien suivant dans cette page :
    "Téléchargez la dernière version de PHPMailer (à ce jour : version 5.2.6)",
    2) je recopie le répertoire téléchargé “PHPMailer-master“ dans le répertoire “C:\Program Files (x86)\EasyPHP-5.3.1\www\“,
    puis je renomme le répertoire recopié “PHPMailer-master“ en “PHPMailer“ :
    Nom : g1.gif
Affichages : 531
Taille : 15,7 Ko

    Quelqu'un comprend-il ce qui ne va pas ?

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

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

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Y a un truc qui va pas dans ton inclusion de la classe (ligne 9 de index.php). La classe n'est pas à cet endroit et ne porte pas ce nom-là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require('PHPMailer'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'PHPMailer.php');

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/11/2012, 01h08
  2. [XL-2010] Envoi automatique de mail depuis une boîte générique Outlook
    Par ferreol dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/01/2012, 10h51
  3. [Servlet]Envoi automatique de mails d'alerte
    Par spk4ever dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 11/05/2006, 14h06
  4. Envoi automatique de mails d'alerte
    Par spk4ever dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 11/05/2006, 11h11
  5. [Mail] envoi automatique de mail
    Par calitom dans le forum Langage
    Réponses: 17
    Dernier message: 04/04/2006, 16h21

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