[php] fonction system() et timeout
clintm
Messages postés
689
Date d'inscription
Statut
Membre
Dernière intervention
-
clintm Messages postés 689 Date d'inscription Statut Membre Dernière intervention -
clintm Messages postés 689 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'utilise la fonction system() de php pour lancer des programmes
le fichier se compose comme ci :
avec ce code je peux lancer des programme à distance.
le programme ce lance bien mais le message ne s'affiche jamais et à la fin : timeout()
en réalité c'est plus compliqué que ça j'ai "inventer" un language, et la fonction system() appel un programme (en php, en ligne de commande) qui traduit mon language.
j'ai lu sur php.net, qu'on peut utiliser passthru() au lieu de system() si on ne veut pas obtenir de retour ???
comment rectifier ce problème
j'utilise la fonction system() de php pour lancer des programmes
le fichier se compose comme ci :
<?php $programme = $_GET['programme']; system("start $programme"); print "programme lancé avec succès"; ?>
avec ce code je peux lancer des programme à distance.
le programme ce lance bien mais le message ne s'affiche jamais et à la fin : timeout()
en réalité c'est plus compliqué que ça j'ai "inventer" un language, et la fonction system() appel un programme (en php, en ligne de commande) qui traduit mon language.
j'ai lu sur php.net, qu'on peut utiliser passthru() au lieu de system() si on ne veut pas obtenir de retour ???
comment rectifier ce problème
A voir également:
- [php] fonction system() et timeout
- Fonction si et - Guide
- Reboot system now - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans system - Guide
- Easy php - Télécharger - Divers Web & Internet
- System fan 90b - Forum Matériel & Système
2 réponses
Bonsoir
Si tu ajoutes le symbole & en fin de ligne de commande, elle s'exécute en arrière plan.
Mais alors la doc php dit :
Si vous démarrez un programme en utilisant cette fonction et que vous voulez le laisser tourner en arrière plan, vous devez vous assurer que la sortie du programme est redirigée vers un fichier, ou un autre flux de sortie, sinon PHP attendra jusqu'à la fin de l'exécution du programme.
http://www.manuelphp.com/php/function.system.php
ec
Si tu ajoutes le symbole & en fin de ligne de commande, elle s'exécute en arrière plan.
Mais alors la doc php dit :
Si vous démarrez un programme en utilisant cette fonction et que vous voulez le laisser tourner en arrière plan, vous devez vous assurer que la sortie du programme est redirigée vers un fichier, ou un autre flux de sortie, sinon PHP attendra jusqu'à la fin de l'exécution du programme.
http://www.manuelphp.com/php/function.system.php
ec