SUJET CLOS

Bonjour à tous
Je rencontre un soucis d'envoi de mails par le biais d'un fichier batch ou d'une tâche planifiée Windows.
Je travaille en local (WAMP). J'ai paramétrer le sendmail comme indiqué sur le site grafikart et j'arrive sans problème à envoyer des mails

J'aimerai cependant lancer un script php par le biais d'un fichier batch afin d'envoyer un mail toutes les heures.

Voici le contenu du fichier bat

@ECHO OFF
C:\wamp64\bin\php\php7.4.33\php.exe "C:\wamp64\www\test\index.php"
PAUSE

Pour info, si j'exécute le script depuis le navigateur (localhost/test), le mail est bien envoyé.
Mais si j'exécute le bat, j'obtiens le message ci-dessous

Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp64\www\test\index.php on line 29

Voici le paramétrage du sendmail.ini

smtp_server=ssl0.ovh.net
smtp_port=465
smtp_ssl=ssl
auth_username=monadressemail
auth_password=monmotdepasse
force_sender=monadressemail

Dans le php.ini, j'ai cela

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = ssl0.ovh.net
; http://php.net/smtp-port
smtp_port = 465

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from =monadressemail

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path = "C:\wamp64\sendmail\sendmail.exe"

Je n'arrive pas à comprendre pourquoi le message d'erreur lors de l'exécution du script par le .bat, me retourne un serveur localhost et un port 25

Quelqu'un aurait-il déjà été confronté à ce problème ?
Par avance merci

Stéphane

1 réponse


Steph62
Auteur

J'ai trouvé.
Dans wamp64/bin/php/php7.x.xx, il y a 2 fichiers .ini (php et phpForApache).
Il faut également modifier la configuration de l'envoi dans le php.ini (celui qu'uitilise le .bat). Ca fonctionnait par le biais du navigateur car il utilise le phpForApache

Si ça peut aider d'autres utilisateurs