bonjour,
j'espère que je poste dans le bon forum :
je voudrai créer une schtask à partir d'un script php
j'ai essayé de créer la tache via ligne de commande et tout va bien ![:D](https://www.developpez.net/forums/images/smilies/icon_biggrin.gif)
c:\Windows\System32>schtasks /create /tn "gen_rapport" /tr "c:\wamp\bin\php\php5.3.13\php.exe -f c:\wamp\www\PFE1\reportopen.php ID=171" /sc DAILY /mo 1 /st "06:29:00" /sd "04/06/2013" /ed "23-10-2013"
maintenant , je l'ai fait dans un script de cette manière :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
<?php
//fonction d'execution de la tache en background:
function execInBackground($cmd) {
if (substr(php_uname(), 0, 7) == "Windows"){
$date = date("d-m-Y");
$heure = date("H:i");
$errtxt="Creation d'une alerte le $date à $heure ";
$id= pclose(popen("start /B ". $cmd, "r"));
$fp = fopen('c:\log.txt','a+'); // ouvrir le fichier ou le créer
fseek($fp,SEEK_END); // poser le point de lecture à la fin du fichier
$nouverr=$errtxt."\r\n"; // ajouter un retour à la ligne au fichier
fputs($fp,$nouverr); // ecrire ce texte
fclose($fp); //fermer le fichier
}
else {
$id= exec($cmd . " > /dev/null &");
}
return $id;
}
// la commande
$cmd = "schtasks /create /tn \"gen_rapport\" /S \"MON-PC\" /RU \"Mon_NOM\" /RP \"MON_PASSWRD\" /tr \"c:\\wamp\\bin\\php\\php5.3.13\\php.exe -f c:\\wamp\\www\\PFE1\\reportopen.php ID=171\" /sc DAILY /mo 1 /st 06:29:00 /sd 04/06/2013 /ed 23/10/2013 ";
// l'exécution de la commande
$id=execInBackground($cmd);
?> |
malheureusement, la tache n'est pas créée !!!
en enlevant la date début et la date fin, la tache est créée ![:(](https://www.developpez.net/forums/images/smilies/icon_sad.gif)
Qui peut m'aidez s'il vous plait ?
Partager