Exécuter PHP en ligne de commande

Lilly
Invité n'ayant pas de compte PHPfrance

19 mars 2021, 18:03

Bonjour,
J'ai un petit souci j'essaye de lancer une page PHP via des lignes de commande mais j'ai ce message d'erreur qui apparait je cherche sur le net depuis des jours et ça bloque si vous avez déjà eu ce souci et que vous avez une réponse je suis preneuse.
le message d'erreur apparaît uniquement quand on lance le fichier php en ligne de commande , quand il est lancé à partir d'un navigateur la connexion se fait .
j'ai bien activé l'extension odbc dans php.

Voila l'erreur:
Fatal error: Uncaught Error: Call to undefined function odbc_connect() in C:\wamp64\www\ConnecteurPMI\connexion_base.php:24
Stack trace:
#0 C:\wamp64\www\ConnecteurPMI\AjoutClientfromCRMToPMI.php(66): connexion_base->SQL_Connect()
#1 {main}
thrown in C:\wamp64\www\ConnecteurPMI\connexion_base.php on line 24

voila le code php de la connexion
$dsn = "Driver={SQL Server Native Client 11.0};Server=$hostname;Database=$database_name";
$connexion = odbc_connect($dsn, $user, $password, $cursor_option= SQL_CUR_USE_ODBC) or die("Echec de la connexion à la base");

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

20 mars 2021, 07:47

Call to undefined function odbc_connect()
Ce message d'erreur veut dire que l'extension ODBC n'est pas activée.
Tu peux vérifier cela en faisant un phpinfo() ou get_loaded_extensions()
https://www.php.net/manual/fr/function. ... nsions.php


Il est probable que ton PHP en ligne de commande ne fasse pas appel au même fichier php.ini que lorsque tu l'appelles via Apache.
Pour voir quel fichier php.ini est utilisé en ligne de commande, voici la commande :
- Sous Windows :

Code : Tout sélectionner

php -i|find/i"configuration file"
- Sous Linux :

Code : Tout sélectionner

php -i | grep 'Configuration File'
Quand tout le reste a échoué, lisez le mode d'emploi...