Commande exec()

jeromepupuce Messages postés 11 Date d'inscription vendredi 28 octobre 2005 Statut Membre Dernière intervention 30 octobre 2008 - 9 oct. 2007 à 07:08
cs_badsha Messages postés 64 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 8 mai 2013 - 6 juin 2011 à 00:33
Bonjour à tous,

Je débute le PHP, je developpe un site en flash 8 pour une toute petite entreprise, je voudrais utilisé une commande exec() dans un PHP pour lancer un programme installé sur le DD de l'utilisateur, mais je n'arrive pas à l'utiliser avec des espace dans le chemin du fichier exe.
Un exemple vaut mieux qu'un grand discour alors voila,

exec("c:\logiciel\MonProg.exe")    ==> fonctionne très bien
exec("c:\mes logiciels\mon programme.exe")  ==> ne fonctionne pas
Bien sur je pourrai renomer tous les fichiers et les dossiers pour qu'il n'y ai pas d'espaces mais c'est pas vraiment une solution !

J'ai essayer de remplacer les espace par %20 aucun effets,
Quelqu'un pourrai m'expliquer comment faire passer ces espaces ?? Ou même une autre solution qui pourrai me permettre d'oouvrir des programmes, des video, ou des photo installé sur l'ordinateur de l'utilisateur.

Merci d'avance

7 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
9 oct. 2007 à 13:15
Hello,

essaye avec un rawurlencode() même si à mon avis ce sera pareil.
0
jeromepupuce Messages postés 11 Date d'inscription vendredi 28 octobre 2005 Statut Membre Dernière intervention 30 octobre 2008
10 oct. 2007 à 06:23
Merci pour l'info mais effectivement cela ne focntionne pas non plus !!
Seule solution trouvée pour le moment : Renomer tous les dossiers et les programmes (pas gloups, il en a une cinquantaine !)

A+
0
amiralkirk Messages postés 1 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 13 novembre 2007
13 nov. 2007 à 12:28
Le plus court chemin pour aller de A à B ?
Arrête de réfléchir et commence à marcher

So say we all
0
kurg Messages postés 1 Date d'inscription mercredi 22 novembre 2006 Statut Membre Dernière intervention 30 juin 2008
30 juin 2008 à 16:21
Mieux vaut tard que jamais, avec des \ devant les ", ça evite de renommer ses répertoires et fichiers.

ex : exec("perl "c:/Program Files/...pl" ");
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_meryyy Messages postés 31 Date d'inscription mercredi 29 octobre 2008 Statut Membre Dernière intervention 30 décembre 2008
30 déc. 2008 à 11:56
bonjour tous le monde ,
Alors si quelqu'un sur ce forum peut m'aider .
je travaille avec une commande exec('ffmpeg -i nomvideo.raw -f avi nomvideo.avi') ;
ça sert à convertir le monvideo.raw en un video.avi , cette commande fonctionne bien. Mais , le problème que ça doit étre dynamique pas statique ça veut dire que . dans mon site je dois selectionner un video et je precise le nom de video destination pour la conversion.
j'ai essayé de mettre des variables genre : 
$videoSource='CHANNEL1_200.raw';
$videoDest='test.avi';
exec('ffmpeg -i "$videoSource" -f avi "$videoDest"');
mais ça ne marche pas .
merci de m'aider .
0
Frankydoudy Messages postés 1 Date d'inscription jeudi 20 septembre 2007 Statut Membre Dernière intervention 30 janvier 2009
30 janv. 2009 à 22:06
exec("c:\logiciel\MonProg.exe")    ==> fonctionne très bien
exec("c:\mes logiciels\mon programme.exe")

Essaye sa : exec(""c:\mes logiciels\mon programme.exe"")

Il faut ajouter des guillements lorsque l'on utilise une string avec des espaces.
0
cs_badsha Messages postés 64 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 8 mai 2013
6 juin 2011 à 00:33
exec("c:\logiciel\MonProg.exe") ==> fonctionne très bien
exec("c:\mes logiciels\mon programme.exe") ==> ne fonctionne pas

le probleme vient de lespace entre les mots
0
Rejoignez-nous