rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[php] utilisation de "exec" (help!!)

magic charly, le lundi 25 juillet 2005 à 14:08:30
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 ;)
Répondre à magic charly  Signaler ce message aux modérateurs Aller au dernier message

1


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
grofwa, le lundi 25 juillet 2005 à 15:11:31
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. Ne vous souciez pas de n'être pas remarqué ; cherchez
plutôt à faire quelque chose de remarquable [Confucius]
Répondre à grofwa

13


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
toto, le jeudi 8 février 2007 à 09:51:21
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.



tappppppppppp
Répondre à toto

14


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 , le jeudi 8 février 2007 à 09:51:34
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.



tappppppppppp
Répondre à

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
magic charly, le lundi 25 juillet 2005 à 15:32:46
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.
Répondre à magic charly

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
grofwa, le lundi 25 juillet 2005 à 15:35:49
T'es sûr que l'output ne se fait pas sur la sortie d'erreur ?
Ne vous souciez pas de n'être pas remarqué ; cherchez
plutôt à faire quelque chose de remarquable [Confucius]
Répondre à grofwa

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
magic charly, le lundi 25 juillet 2005 à 15:51:36
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().
Répondre à magic charly

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
magic charly, le lundi 25 juillet 2005 à 15:53:39
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().
Répondre à magic charly

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
grofwa, le lundi 25 juillet 2005 à 15:54:02
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...

Ne vous souciez pas de n'être pas remarqué ; cherchez
plutôt à faire quelque chose de remarquable [Confucius]
Répondre à grofwa

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
magic charly, le lundi 25 juillet 2005 à 15:55:57
qd je lance ma commande sur un terminal le résultat apparait sur le terminal. IL s'agit donc bien de la sortie standard ?
Répondre à magic charly

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
grofwa, le lundi 25 juillet 2005 à 15:57:33
pas forcément, par défaut, les deux sorties sont dirigées vers l'écran.

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. Ne vous souciez pas de n'être pas remarqué ; cherchez
plutôt à faire quelque chose de remarquable [Confucius]
Répondre à grofwa

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
magic charly, le lundi 25 juillet 2005 à 16:01:11
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?
Répondre à magic charly

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
grofwa, le lundi 25 juillet 2005 à 16:03:38
Ben oui, dans ce cas...
Honnêtement, je ne vois pas quoi te proposer d'autre ...

Ne vous souciez pas de n'être pas remarqué ; cherchez
plutôt à faire quelque chose de remarquable [Confucius]
Répondre à grofwa

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
magic charly, le lundi 25 juillet 2005 à 16:32:36
merci qd mem grofwa
je continue de chercher mais un peu d'aide serait la bienvenue :)
Répondre à magic charly

12


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
magic charly, le mardi 26 juillet 2005 à 09:23:22
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 ?
Répondre à magic charly
Logiciels pertinents trouvés dans les téléchargements
Télécharger PHP Edit 0.6PHP Edit - PHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de...Catégorie: PHP
Licence: Freeware/gratuit
Télécharger WAMP Server 2.0cWAMP Server - WAMP5 (WAMP signifiant Windows Apache Mysql PHP) est une plateforme de développement Web sous Windows. Il vous permet de...Catégorie: Serveurs
Licence: Freeware/gratuit
Télécharger SIW 2008-07-15SIW - SIW (System Information for Windows) est un programme permettant d'analyser la configuration de l'ordinateur et d'effectuer...Catégorie: Diagnostic
Licence: Freeware/gratuit
Télécharger All In One Video Script 1.0All In One Video Script - All In One Video Script est un script pour l'extension GreaseMonkey pour le navigateur Firefox permettant de détecter la...Catégorie: Vidéo
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « [php] utilisation de "exec" (help!!) »