Bonjour tout le monde.

Je rencontre un problème concernant un outil que je développe en PHP/Perl.

Mon script PHP exécute une commande perl via shell_exec ou exec, le résultat est le même.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
$myPerlCommand = "perl ../myCommand.pl -o chemin 2>../dossier_temp/out &";
exec($myPerlCommand);
J'aimerais que mon script lance ma commande et continue ensuite de s'exécuter, c'est-à-dire qu'une fois la commande Perl lancée, l'utilisateur soit de suite redirigé vers une page lui indiquant que son analyse a été lancée.

Cependant, malgré l'ampersand "&" dans la commande Perl, mon script PHP attend que la commande Perl se termine pour afficher ma page de redirection et donc ne se lance pas en tâche de fond.

J'ai essayé de remplacer exec par shell_exec ou bien system, mais il n'y a aucun changement. Et les autres post du forum ne m'ont pas aidé pour le moment.

Auriez-vous une idée pour régler ce problème ?

Merci beaucoup !