fonction exec, python & php

coolspy
Invité n'ayant pas de compte PHPfrance

29 févr. 2008, 15:41

Bonjour,
J’ai un repertoire prog sur serveur linux www/prog et je souhaite executer test.php qui contient un exec(‘python test.py’) ;
Python est bien installé sur le serveur mais l’exec ne fait rien comme si qu’il ne trouve pas le programme. Pourtant cela marche sur windows peut être que la commande est différente ou peut être faut il changer quelquechose au niveau de la config serveur ?
Si vous avez la réponse… merci d’avance à toutes et tous !

Eléphant du PHP | 79 Messages

29 févr. 2008, 16:14

As-tu essayé sur le serveur de faire directement en shell : python test.py*
Le script a t il les droits d'exécution ? La commande python est elle défini au niveau du serveur, sinon tu peux essayer un truc du genre /bin/python suivant l'endroit où se situe ton script.

Invité
Invité n'ayant pas de compte PHPfrance

29 févr. 2008, 17:01

le script a les droits d'execution ça c'est ok! (755)

mais comment definir la commande python pour que cela puisse s'appliquer au répertoire prog du serveur? quels fichiers dois je modifier? je ne suis pas expert en linux..

merciiii

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

29 févr. 2008, 19:46

Modération :
coolspy, le multipostage est interdit sur le forum.

Merci de prendre le temps de lire les règlements.
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 445 Messages

29 févr. 2008, 19:57

Preferes exec(‘python.exe test.py’);

Ensuite, il faut que exec() trouve le fichier python.exe

Le mieux pour cela est de mettre le chemin de python.exe dans le PATH windows
Faites un click droit sur le poste de travail, puis Propriétés
Allez sur l'onglet Avancé
Cliquez sur le bouton 'Variable d'environnement
Recherchez dans la liste la variable path
Sélectionnez là et cliquez sur Modifier

ViPHP
ViPHP | 5924 Messages

29 févr. 2008, 20:23

Déjà, vérifie que ta commande python test.py marche dans le terminal (en te connectant en ssh sur le serveur).

Invité
Invité n'ayant pas de compte PHPfrance

01 mars 2008, 00:00

ok ça marche sur le serveur en mode shell dans le repertoire python je fais quoi apres pour que ca marche sur prog?

ViPHP
ViPHP | 5924 Messages

01 mars 2008, 00:09

Tu mets le bon chemin dans ta ligne de commande.

coolspy
Invité n'ayant pas de compte PHPfrance

03 mars 2008, 10:34

ok Sékiltoyai merci mais n'existe-t-il pas une possibilité de définir une variable d'environnement comme dans windows et de renseigner le chemin de python?

Comme ça je mets le chemin dans cette variable et cela marche partout sur le serveur!
merci d'avance

Invité
Invité n'ayant pas de compte PHPfrance

04 mars 2008, 16:11

merci a tous pour votre aide!! tout fonctionne

ViPHP
ViPHP | 5924 Messages

04 mars 2008, 16:15

Tu as procédé comment en définitive ?