je n'arrive pas a executer une commande via PHP [PHP] - PHP - Programmation
Marsh Posté le 05-03-2004 à 16:15:19
Faut voir. 2 pistes possibles :
- problème de droit : je pense que les droits utilisés pour l'exécution du .cmd seront ceux du serveur web. Peut être sont-ils trop restreints pour accéder et exécuter corectement le .cmd.
- problème de répertoire : tu lances l'exécution du script avec son chemin complet, mais il ne se place pas forcément dans ce répertoire. Donc il ne trouve pas le fichier EXTRACT_annonces_log.php dans le répertoire où il se trouve.
Essaie en lancant directement la commande complète, au lieu de passer par un .cmd
Marsh Posté le 05-03-2004 à 16:26:22
j'etais justement sur ces pistes ...
j'execute directement la commande lancee par le .cmd et j'ai ajouter le chemin complet a chaque fois. Je n'ai pas de message d'erreur mais toujours pas de fichier genere grrrrr....
pour les droits, vu que je ne passe plus par le .cmd, cela peut-il etre tjrs un probleme ?
Marsh Posté le 05-03-2004 à 16:36:33
C'est bien "EXTRACT_annonces_log.php" qui cree le fichier texte, essaye de regarder ou il le cree, s'il utilise le repertoire courrant. Comme l'a dit mrbebert, le probleme viens peut-etre de la.
Essaye de modifier "EXTRACT_annonces_log.php" pour qu'il cree le fichier toujours au meme endroit par exemple "c:\". Apres tu auras un base qui te permetera de comparer l'execution via le "cmd" et l'exec via ton script php.
Marsh Posté le 05-03-2004 à 16:48:08
Cerel a écrit : C'est bien "EXTRACT_annonces_log.php" qui cree le fichier texte, essaye de regarder ou il le cree, s'il utilise le repertoire courrant. Comme l'a dit mrbebert, le probleme viens peut-etre de la. |
co**llon que je suis
ca fonctionne bien, le fichier est cree dans le repertoire de mon 1er script PHP et non pas dans le repertoire où EXTRACT_annonces_log.php est execute
mille a vous 2
(roo je m'en veux !!! )
Marsh Posté le 05-03-2004 à 16:48:59
derniere question : il vaut mieux privilegier exec(), passthru() ou system()
Marsh Posté le 06-03-2004 à 00:38:38
Si j'ai bien compris tu utilise un fichier .cmd parce que les fichiers à lire ne sont pas sous la racine du serveur web?
Marsh Posté le 06-03-2004 à 10:16:27
non j'utilisais le .cmd pour executer un scipt PHP directement sur le serveur et passer outre la limite de temps d'execution de script qui me posait probleme dans certain cas
le .cmd m'etais surtout utile pour eviter de retaper la ligne de commande a la main
Marsh Posté le 08-03-2004 à 09:37:55
Batman-Fr a écrit : derniere question : il vaut mieux privilegier exec(), passthru() ou system() |
Marsh Posté le 08-03-2004 à 13:36:14
D'après ce que j'ai compris, passthru est plus adapté aux programmes qui renvoient du binaire et que tu veux envoyer directement au client (par exemple, une image).
Pour les 2 autres, les différences ont l'air subtiles
Marsh Posté le 05-03-2004 à 15:50:24
j'essaie de lancer un .cmd sur mon serveur depuis un scipt PHP.
mon .cmd execute lui-même un script PHP qui execute une requete SQL et place les resultats dans un fichier texte
j'ai essaye avec exec et passthru mais ca tourne dans le vide : aucun fichier n'est genere ... (en executant a la main le .cmd, ca marche bien, je precise )
voici mon code au cas ou ...
1er script PHP qui appelle le .cmd :
le code du .cmd :
un avis
Message édité par Batman-Fr le 05-03-2004 à 15:51:26
---------------
Tout ou rien mais rien que tout ! feed-back : http://forum.hardware.fr/forum2.ph [...] ost=121391