[Système] exec fichier sql dans shell
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:
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;
}
} |