[php] utilisation de "exec" (help!!)
magic charly
Messages postés
122
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
j'utilise une syntaxe du type exec(commande) avec commande étant une chaîne de caractères.
qd je fais echo(commande) il s'agit bien de la commande souhaitée
Cette commande est sensée renvoyer sur l'entrée standard "OK\n" ou "ERR\n". Donc la fonction exec prendre pr valeur "OK\n" ou "ERR\n" or elle ne prend pa de valeur :( ->
echo(exec(commande)) n'affiche rien.
J'ai testé la commande seule sur un terminal en faisant un copier coller de ce qui était affiché avec echo(commande) elle marche correctement. Je ne sais vraiment plus quoi faire..
amis du php je suis a votre écoute ;)
j'utilise une syntaxe du type exec(commande) avec commande étant une chaîne de caractères.
qd je fais echo(commande) il s'agit bien de la commande souhaitée
Cette commande est sensée renvoyer sur l'entrée standard "OK\n" ou "ERR\n". Donc la fonction exec prendre pr valeur "OK\n" ou "ERR\n" or elle ne prend pa de valeur :( ->
echo(exec(commande)) n'affiche rien.
J'ai testé la commande seule sur un terminal en faisant un copier coller de ce qui était affiché avec echo(commande) elle marche correctement. Je ne sais vraiment plus quoi faire..
amis du php je suis a votre écoute ;)
A voir également:
- [php] utilisation de "exec" (help!!)
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- La ressource demandée est en cours d'utilisation ✓ - Forum Logiciels
12 réponses
Salut,
Tu as essayé d'utiliser un deuxième paramètre (output) qui renvoie un array contenant la liste des lignes affichées sur la sortie standard ?
m.
Tu as essayé d'utiliser un deuxième paramètre (output) qui renvoie un array contenant la liste des lignes affichées sur la sortie standard ?
m.
oui j'ai mis un tableau output pr stocker si le retour ne prenait pa plusieurs lignes mais il n'y a rien ds mon tableau :`(
j'ai fait tous les tests possibles et imaginables je suis arrivé aux limites de mon imagination.
j'ai testé exec avec une commande plus classique pr vérifier que je l'utilisais correctement exec("ping adressIP",$output) ça fonctionne très bien.
j'ai fait tous les tests possibles et imaginables je suis arrivé aux limites de mon imagination.
j'ai testé exec avec une commande plus classique pr vérifier que je l'utilisais correctement exec("ping adressIP",$output) ça fonctionne très bien.
non il ne me semble pa que ce soit sur la sortie d'erreur amoins que j'ai mal interprété les lignes suivantes j'avais compris que cela se faisait sur la sortie standard
cf php.net
output
Si l'argument output est présent, alors ce tableau sera rempli par les lignes retournées par la commande. Il faut noter que si ce tableau contient des éléments, exec() ajoutera les nouvelles lignes à la fin du tableau. Si vous ne voulez pas que les nouveaux éléments soient concaténés, utilisez la fonction unset() avec ce tableau avant de le passer à exec().
cf php.net
output
Si l'argument output est présent, alors ce tableau sera rempli par les lignes retournées par la commande. Il faut noter que si ce tableau contient des éléments, exec() ajoutera les nouvelles lignes à la fin du tableau. Si vous ne voulez pas que les nouveaux éléments soient concaténés, utilisez la fonction unset() avec ce tableau avant de le passer à exec().
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
non il ne me semble pa que ce soit sur la sortie d'erreur amoins que j'ai mal interprété les lignes suivantes j'avais compris que cela se faisait sur la sortie standard
cf php.net
output
Si l'argument output est présent, alors ce tableau sera rempli par les lignes retournées par la commande. Il faut noter que si ce tableau contient des éléments, exec() ajoutera les nouvelles lignes à la fin du tableau. Si vous ne voulez pas que les nouveaux éléments soient concaténés, utilisez la fonction unset() avec ce tableau avant de le passer à exec().
cf php.net
output
Si l'argument output est présent, alors ce tableau sera rempli par les lignes retournées par la commande. Il faut noter que si ce tableau contient des éléments, exec() ajoutera les nouvelles lignes à la fin du tableau. Si vous ne voulez pas que les nouveaux éléments soient concaténés, utilisez la fonction unset() avec ce tableau avant de le passer à exec().
Ce que je voulais dire, c'est que si ça tombe, ta commande envoie la sortie sur la sortie d'erreur. La fonction exec ne récupère apparemment que la sortie standard...
qd je lance ma commande sur un terminal le résultat apparait sur le terminal. IL s'agit donc bien de la sortie standard ?
pas forcément, par défaut, les deux sorties sont dirigées vers l'écran.
pour tester :
si tu as du texte dans err.txt, c'est que ça sort sur la sortie d'erreur.
m.
pour tester :
ma_commande >std.txt 2>err.txt
si tu as du texte dans err.txt, c'est que ça sort sur la sortie d'erreur.
m.
j'ai pa de text ds err.txt par contre j'ai du text dans std.txt. Je suppose qu'il s'agit donc bien de la sortie standard?
le programme en question est programmé en C et est sous la forme void main (argc argv[]){
blablabla}
et qd je demande de retourner avec exec l'entier retourné par l'éxécutable associé a ce fichier .c pr vérifier qu'il n'y a pa d'erreur -> il me retourne 255
:(
pensez vous que cela puisse perturber exec qui refuserait alors de se lancer ?
blablabla}
et qd je demande de retourner avec exec l'entier retourné par l'éxécutable associé a ce fichier .c pr vérifier qu'il n'y a pa d'erreur -> il me retourne 255
:(
pensez vous que cela puisse perturber exec qui refuserait alors de se lancer ?
m.
tappppppppppp
m.
tappppppppppp