[PHP -> Python] Appel script avec paramètres

[Résolu/Fermé]
Signaler
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
-
 panda -
Bonjour,

Je souhaite appeler un script Python depuis mon code PHP, en passant deux paramètres (qui correspondent à deux tableaux de valeurs)..

Est-ce bien possible?
Merci!

4 réponses

Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
Salut,

C'est l'appel du script depuis PHP qui m'embête, je ne sais pas comment passer les paramètres dans l'appel ni comment les utiliser dans mon script Python.

C'est un appel à sens unique, le script va utiliser les valeurs passées en paramètre mais ne retourne rien.

Merci!
4
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 42854 internautes nous ont dit merci ce mois-ci

Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 520
Tu bosses sous windows semble t'il?

Il faut que tu repère le chemin vers l'executable, typiquement:
c:\Python26\python.exe

Et tu executes ton script avec exec:
https://www.php.net/manual/fr/function.exec.php
exec('c:\Python26\python.exe monfichier.py arg1 arg2')

A la place de monfichier.py il faut que tu mettes le chemin complet vers ton script.

En suite dans ton script python, tu peux basiquement récupérer tes arguments:
import sys

def main():
    if len(sys.argv) != 3:
        print "pas assez d'arguments"
        return
    
    print sys.argv[1] //affiche arg1
    print sys.argv[2] //affiche arg2

main()
Messages postés
1
Date d'inscription
lundi 4 juin 2012
Statut
Membre
Dernière intervention
4 juin 2012
2
Bonjour ,

J ai probleme au niveau du php
Qd je vx integrer mon script (python) ds php il ne s execute pas et je sé po prq

code python :
( je li un fichier et j affiche sa taille totale)

f = open('G:\Python27\azerty.txt', 'r')

a= f.read()

res=""
aaa= a.split()
print(aaa)
print(len(aaa))


PHP :


<?php


exec ('G:\Python27\python.exe G:\Python27\tet.py');
echo "tesssstttt";



?>



bonjour !!!

PS : pour tet.py j ai essaié de le rendre executable é au lieu de tet.py j ecrir tet.exe mais sa donne r1 .

Merci pr votre aide
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 520
Salut,

Oui tout à fait.
Qu'est ce qui te pose problème? L'appel du script depuis php ou la récupération des paramètres en python?
comment executer un fichier python sur le serveur..
Messages postés
39
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
23 janvier 2016
6
Oui je travaille sous Windows, sa fonctionne nickel, merci beaucoup Kilian! J'ai juste modifié l'adresse de l'exécutable Python car j'utilise celui intégré à OpenOffice.org :)

Merci encore!
Esty