Problème Fonction exec() PHP [Résolu]

Scorpio2201 19 Messages postés jeudi 22 mai 2008Date d'inscription 1 juillet 2010 Dernière intervention - 10 juin 2010 à 09:43 - Dernière réponse : Scorpio2201 19 Messages postés jeudi 22 mai 2008Date d'inscription 1 juillet 2010 Dernière intervention
- 10 juin 2010 à 13:20
Bonjour,

Je me permet de vous demander un conseil sur la fonction exec() de PHP.

Je suis sous Ubuntu 9.10 avec Apache, PHP et MySQL d'installer. Je souhaite exécuter une commande linux via PHP.

Voici cette commande :

xls2csv -q 0 ./excel/fichier_test.xls > ./excel/fichier_csv.csv

Elle fonctionne correctement directement via le terminal : elle permet de transformer un fichier .xls en fichier .csv.

Je souhaiterais pouvoir exécuter cette commande via PHP avec il me semble la fonction exec() de PHP. Mais sans réussite.

Voici le code que j'ai développer :

<?php
class Export_Excel
{
var $command;

function Export_Excel()
{
$this->command = "xls2csv";
}

function xls2csv($path,$xls_file,$short_name)
{
$cmd = "$this->command -q 0 $path/$xls_file";
$cmd .= " > $path/$short_name.csv";

@exec($cmd,$stdout,$errocode);

unlink("$path/$xls_file");

if ($errorcode > 0)
{
echo "
Erreur : ".$errocode;
}

echo "
".$cmd;

}

}

$chemin = "./excel";
$fichier = "fichier_test.xls";
$nom_csv = "fichier_csv";

$objet = new Export_Excel();
$objet -> xls2csv($chemin, $fichier, $nom_csv);
?>


J'ai l'impression que c'est un problème de droit de l'utilisateur httpd.

Si vous pouvez me donner des pistes afin que je puisse résoudre cette énigme.


Je vous remercie d'avance.
Afficher la suite 

Votre réponse

2 réponses

devil_may_cry 195 Messages postés dimanche 18 mars 2007Date d'inscription 11 juillet 2015 Dernière intervention - 10 juin 2010 à 10:31
+3
Utile
salut,
essaye avec passthru($cmd,$ouput) tu poura recuperer le $output pour deboguer voir que retoune le terminal comme erreur
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de devil_may_cry
Scorpio2201 19 Messages postés jeudi 22 mai 2008Date d'inscription 1 juillet 2010 Dernière intervention - 10 juin 2010 à 13:20
0
Utile
Je vais essayer. Je te tiens au courant. Merci
Commenter la réponse de Scorpio2201

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.