Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3738 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  php exec... et oui encore lui

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

php exec... et oui encore lui

n°1670562
pitfaw
Posté le 14-01-2008 à 00:29:53  profilanswer
 

Bonjour a tous,
 
J'ai un petit programme en C++ qui doit générer  un String et le balance sur la sortie standard cout.
Ce programme marche bien dans le terminal (sous osx) et affiche bien sur la sortie standard (pas stderr).
Apparement pas de souci
 
Depuis un script php je voudrais récuperer ce string dans une variable.
J'utilise donc exec($command,$output,$retval) mais j'ai rien dans mon output et retval n'a pas une bonne valeur.
 
les droits d'execution du prog c++ ont l'air ok (x pour chaque user).
 
pas de problèmes si j'essaie avec une autre command comme ls -l, mais bizarrement ca ne marche pas avec toutes les commandes avec svn par example je ne récupère pas le texte qui sort sur le terminal.
 
Ca fait des heures que j'essaie tout et n'importe quoi pour comprendre ce qui se passe ...  :pt1cable:  
J'ai tout essayé shell_exec,system,passthru... mais le résultat et le même
 
quelqu'un aurait une piste ??
 
Merci d'avance
 
Pit


Message édité par pitfaw le 14-01-2008 à 00:38:50
mood
Publicité
Posté le 14-01-2008 à 00:29:53  profilanswer
 

n°1671048
czh
Posté le 14-01-2008 à 18:41:37  profilanswer
 

2>&1 : redirection du flux d'erreur sur la sortie standard, c'est mieux pour comprendre "pourquoi"
 
exec("macommande 2>&1",$output,$retval);
print_r($output);
 
Si tu as une erreur avant l'exécution de ton programme, bash te la renvoie sur stderr.

Message cité 1 fois
Message édité par czh le 14-01-2008 à 18:42:56
n°1671599
pitfaw
Posté le 15-01-2008 à 16:30:27  profilanswer
 

czh a écrit :

2>&1 : redirection du flux d'erreur sur la sortie standard, c'est mieux pour comprendre "pourquoi"
 
exec("macommande 2>&1",$output,$retval);
print_r($output);
 
Si tu as une erreur avant l'exécution de ton programme, bash te la renvoie sur stderr.


 
 
Le truc c'est que je ne me connecte pas a ce serveur depuis un browser mais depuis un soft qui se connecte a ce serveur pour récuperer des données (protection,update...)
Donc le truc genre print_r, je ne sait pas comment le récuperer... ca va renvoyer la sortie a mon soft?

n°1672214
pitfaw
Posté le 16-01-2008 à 14:40:45  profilanswer
 

pitfaw a écrit :


 
 
Le truc c'est que je ne me connecte pas a ce serveur depuis un browser mais depuis un soft qui se connecte a ce serveur pour récuperer des données (protection,update...)
Donc le truc genre print_r, je ne sait pas comment le récuperer... ca va renvoyer la sortie a mon soft?


 
ah ok, depuis un browser la commande me montre effectivement un message d'erreur du a mon prog:
 
Array ( [0] => dyld: Symbol not found: __cg_jpeg_resync_to_restart [1] => Referenced from: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO [2] => Expected in: /Applications/MAMP/Library/lib/libJPEG.dylib [3] => )
 
vu que le prog s'execute bien depuis le terminal, quelle différence peut-t-il y avoir depuis php (le safe mode est off)?
 
Merci
 

n°1845825
moilerat
Posté le 01-02-2009 à 16:03:18  profilanswer
 

pitfaw a écrit :


 
ah ok, depuis un browser la commande me montre effectivement un message d'erreur du a mon prog:
 
Array ( [0] => dyld: Symbol not found: __cg_jpeg_resync_to_restart [1] => Referenced from: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO [2] => Expected in: /Applications/MAMP/Library/lib/libJPEG.dylib [3] => )
 
vu que le prog s'execute bien depuis le terminal, quelle différence peut-t-il y avoir depuis php (le safe mode est off)?
 
Merci
 


 
 
Je te conseille de faire preceder la commande dans ton exec d'un "unset DYLD_LIBRARY_PATH;"
Cela m'a permis de faire un script php qui appele gnuplot sans enlever DYLD_LIBRARY_PATH  j'avais le message :
 dyld: Symbol not found: __cg_jpeg_CreateCompress
  Referenced from: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO
  Expected in: /Applications/MAMP/Library/lib/libJPEG.dylib
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  php exec... et oui encore lui

 

Sujets relatifs
Problème avec la fonction "exec()"php exec() programme externe
Runtime.exec(), probleme de passage d'arguments[RESOLU] exec -> exit php
Probléme de flux avec Runtime.exec()Probleme de configuration PHP pour fonction exec("")
exec + afficher resultat script bashExec + afficher resultat script bash
system et exec ?[PERL] Fenêtre dos et exec()
Plus de sujets relatifs à : php exec... et oui encore lui


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)