Problème (include_path='.;C:\php\pear')

Résolu/Fermé
someone - Modifié le 12 avril 2022 à 16:43
 Someone - 12 avril 2022 à 21:31
Bonjour,

j'essaye d'exécuter un script php via un fichier bath
mais je reçois un message d'erreur tel que :

Warning: Module 'oci8' already loaded in Unknown on line 0

Warning: Module 'oci8' already loaded in Unknown on line 0

Warning: require(../PHPMailer-Master/src/Exception.php): failed to open stream: No such file or directory in C:\wamp64\www\LEM_ControleAcces\Php\planificateurtest.php on line 4

Fatal error: require(): Failed opening required '../PHPMailer-Master/src/Exception.php' (include_path='.;C:\php\pear') in C:\wamp64\www\LEM_ControleAcces\Php\planificateurtest.php on line 4

Pourtant lorsque j'exécute le fichier dans un navigateur, ça fonctionne correctement je reçoit un mail.

Voici le script php :

<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require ('../PHPMailer-Master/src/Exception.php');
require ('../PHPMailer-Master/src/PHPMailer.php');
require ('../PHPMailer-Master/src/SMTP.php');

try{
        $mail = new PHPMailer(true);
        $mail->SMTPDebug=0;
        $mail->isSMTP();
        $mail->SMTPOptions = ['ssl' => ['verify_peer' => false,'verify_peer_name' => false,'allow_self_signed' => true]];
        $mail->Host='smtp.gmail.fr';
        $mail->Port='25';
        $mail->SMTPAuth=false;
        $mail->Encoding='base64';
        $mail->Charset='UTF-8';
        $mail->setFrom('***@***','ESIL LEM');
        $mail->addAddress('***@***');
        $mail->Subject='Mail de test';
        $mail->Body='Contenu de test pour mail (test)';
        $mail->send();
        echo 'Mail send';
    }
    catch(Exception $e){
         echo $mail->ErrorInfo;
        }
 


et voici le script du fichier bath :

C:\wamp64\bin\php\php7.4.9\php.exe -f "C:\wamp64\www\LEM_ControleAcces\Php\planificateurtest.php"

pouvez vous m'aidez s'il vous plait c'est très urgent.

Merci d'avance.

Configuration: Windows / Chrome 100.0.4896.75
A voir également:

2 réponses

jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
12 avril 2022 à 17:25
Bonjour,

Essaye de préfixer le chemin vers les fichiers que tu require par la variable __DIR__
Je pense que c'est un souci de chemin
Lorsque tu l'exécutes à partir du navigateur il le prend bien en relatif par rapport à l'url
Mais en ligne de commande, il ne doit pas (virtuellement )se trouver au même endroit

En gros
require_once (__DIR__ . '../PHPMailer-Master/src/Exception.php');
require_once (__DIR__ . '../PHPMailer-Master/src/PHPMailer.php');
rerequire_once uire (__DIR__ . '../PHPMailer-Master/src/SMTP.php');


ou il faudra peut-être un slash en plus
require_once (__DIR__ . '/../PHPMailer-Master/src/Exception.php');
require_once (__DIR__ . '/../PHPMailer-Master/src/PHPMailer.php');
require_once (__DIR__ . '/../PHPMailer-Master/src/SMTP.php');

0