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

Signaler
Messages postés
19
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
1 juillet 2010
-
Scorpio2201
Messages postés
19
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
1 juillet 2010
-
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.

2 réponses

Messages postés
194
Date d'inscription
dimanche 18 mars 2007
Statut
Membre
Dernière intervention
11 juillet 2015

salut,
essaye avec passthru($cmd,$ouput) tu poura recuperer le $output pour deboguer voir que retoune le terminal comme erreur
Messages postés
19
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
1 juillet 2010

Je vais essayer. Je te tiens au courant. Merci