Salut à tous,
Je développe un script qui met à jour une base mysql a partir d'un fichier sql à l'aide de la commande exec...
Mon problème est que je n'arrive pas à récuperer le résultat en cas d'erreur...
J'ai remarque qu'avec une autre commande (genre ls -aux) le résultat affiché était renvoyé, est ce du au fait que la commande soit mysql ?
J'ai essayé d'autre fonction passthru , shell _exec, rien n'y fait...
Peut être y' a t'il un parametre a rajouter a la commande shell ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 $rep = JOB_ROOT_DATA.'sql'; $resultat = ""; $retour = ""; if(!$dir = opendir($rep)) trigger_error('Impossible d\'ouvrir le repertoire : '.$rep.'.',E_USER_ERROR); while (false !== ($fichier = readdir($dir))) { if (($fichier != '.') && ($fichier != '..') && ($fichier != '...')) { exec('mysql -h localhost -u'.JOB_DB_USER.' -p'.JOB_DB_PASSWD.' '.JOB_DB_BASE.' < '.$rep.'/'.$fichier,$retour,$resultat); print $resultat; print $retour; } }
Partager