curl et wamp en ligne de commande CLI

WRInaute impliqué
Salut,

Je suis en train de me prendre la tête sur le lancement d'un script php (qui utilise du curl) en ligne de commande. :cry:

La librairie curl est bien installée et ca fonctionne si je lance la page php via un navigateur.
J'ai vérifié dans le phpinfos et curl est bien enabled.
Les dlls sont bien copiées dans mon windows PATH.
Le pc est fraichement rebooté.

Mais quand j'utilise ce script en ligne de commande ca me sort l'erreur :
Code:
Fatal error: Call to undefined function curl_init() in C:\wamp\www\moteur\test.php on line 4

C'est vraiment bizarre car comme je le dis plus haut le script fonctionne parfaitement dans un navigateur. Je précise que d'autres scripts fonctionnent parfaitement via la ligne de commande.
Voici la ligne de commande :
Code:
c:\wamp\bin\php\php5.2.6\php.exe -f c:\wamp\www\moteur\test.php

J'ai absolument besoin de lancer ce script via un batch (.bat) et ce script doit absolument utiliser le curl.

Quelqu'un a une solution à me proposer svp? :?
 
WRInaute discret
Salult.
Tu n'utiliserais pas une variable définie que lorsque tu passes par un serveur Web par hasard ? genre $_SERVER['DOCUMENT_ROOT'] ou quelque chose comme ca pour aller chercher ta librairie ?
 
WRInaute impliqué
non :(

voici le code :

Code:
$ch=curl_init();
curl_setopt($ch,CURLOPT_USERAGENT,"MONUSERAGENT");
curl_setopt($ch,CURLOPT_HEADER,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_URL,$url);
echo curl_exec($ch);
curl_close($ch);
 
WRInaute impliqué
ok j'ai trouvé l'origine du problème.

Sous wamp il y a deux php.ini :
celui utilisé par apache via un navigateur
et celui utilisé par php via le CLI

donc il a fallut que je modifie le fichier php.ini dans le repertoire où se situe mon php.exe et que je décommente la ligne pour l'extension curl.

Voici le lien vers le forum où j'ai trouvé la solution pour + de renseignements : -http://www.sitepoint.com/forums/showthread.php?t=569955

Merci poulpe pour ton aide ;)
 
WRInaute accro
J'ai eu le même problème. Mais tu a trouvé la solution tout seul avant que je n'arrive ;)

Lorsque l'on parle de ce bug à l'équipe de wampserver, ils considèrent cela comme une feature.
Chacun son point de vue. Mais ils devraient IMHO rendre la chose plus claire.
 
WRInaute impliqué
c'est clair, le seul moyen de voir ca c'est comparer le chemn du php.ini dans le phpinfo quand on le lance dans le navigateur ou en CLI

mais bon...

Je suis déjà sur un autre problème mais cette fois c'est avec mysql et a mon avis je suis pas prêt de le résoudre tellement il est space celui là... :lol:
 
WRInaute impliqué
Mdr :lol:

Attends j'ai pas encore assez cherché :lol:

En fait vite fait c'est un tableau de liens où dans une boucle for je test avec un COUNT(*) pour voir si ils existent dans ma base. Ca me renvois une erreur du type Warning: mysql_result(): supplied argument is not a valid mysql resource. J'ai rajouté un echo pour affiché ma query entre chaque erreur et quand je ne lance qu'une query toute seule dans phpmyadmin ou alors dans un script ca fonctionne :roll:
Je posterai un nouveau sujet si mes neuronnes surchauffent encore une fois :mrgreen:

PS : trois messages que tu postes et à chaque fois un nouvel avatar sur le seigneur des anneaux... tu as mis le film en image par image pour ton avatar?? :D
 
WRInaute accro
PS : trois messages que tu postes et à chaque fois un nouvel avatar sur le seigneur des anneaux... tu as mis le film en image par image pour ton avatar??
Non. Je dois en avoir une dizaine dans un répertoire et le script en prends une aléatoirement à chaque chargement.

Cette erreur signifie que ta requête SQL n'est pas correcte.
Fait un :
Code:
mysql_query($sql) or die(mysql_error());

Par ailleurs je te conseille de faire la démarche inverse. Récupérer tous tes liens dans la base et comparer avec ceux dans le tableaux.
Mieux vaut parcourir plusieurs fois un tableau que de faire 50 requêtes SQL dans une base.

Cela n'est pas valable si tu a 100k liens dans ton tableau et 10 dans ta base evidemment. Mais je doute que cela ne soit le cas
 
Discussions similaires
Haut