From: <gu...@us...> - 2007-05-13 20:26:53
|
Revision: 151 http://svn.sourceforge.net/easybox-mod/?rev=151&view=rev Author: guyou Date: 2007-05-13 13:26:51 -0700 (Sun, 13 May 2007) Log Message: ----------- Enregistrement Gestion de l'enregistrement via cron Modified Paths: -------------- trunk/lecteur/stop_rec.php trunk/module/multiposte/add.php trunk/module/multiposte/index1.php Modified: trunk/lecteur/stop_rec.php =================================================================== --- trunk/lecteur/stop_rec.php 2007-05-13 20:26:26 UTC (rev 150) +++ trunk/lecteur/stop_rec.php 2007-05-13 20:26:51 UTC (rev 151) @@ -1,5 +1,8 @@ <?php + $RACINE_REP = "../"; + require($RACINE_REP.'_framework/framework.php'); + $db = sqlite_open('../_utilisateur/records.db', 0666); $requete='UPDATE records SET statut=\'Enregistr\xE9\' WHERE id='.$_GET['id']; $result = sqlite_query($db,$requete); @@ -11,8 +14,16 @@ @unlink($result['fichierbat']); @unlink(ereg_replace(".bat","-end.bat",$result['fichierbat'])); - $at=exec('at '.$result['task'].' /delete'); - $at.=exec('at '.$result['taskend'].' /delete'); + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $at=exec('at '.$result['task'].' /delete'); + $at.=exec('at '.$result['taskend'].' /delete'); + } else { + // Support eventuel de /etc/cron.d + $string1 = $result['fichierbat']; + $string2 = ereg_replace(".bat","-end.bat",$string1); + remove_from_cron($string1); + remove_from_cron($string2); + } $file1 = @file_get_contents("http://127.0.0.1:8082/lecteur/action.html?control=shutdown"); Modified: trunk/module/multiposte/add.php =================================================================== --- trunk/module/multiposte/add.php 2007-05-13 20:26:26 UTC (rev 150) +++ trunk/module/multiposte/add.php 2007-05-13 20:26:51 UTC (rev 151) @@ -7,6 +7,22 @@ $etape=$_GET['etape']; $smarty->assign('etape',$etape); +if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $wxsystray='--wx-systray'; + // This is DOS specific + $vlcdummyquiet="--dummy-quiet"; + $vlcstart="start vlc\vlc.exe"; + $wwwstartbeg="start "; + $wwwstartend=""; +} elseif (is_writable('/etc/cron.d/easybox')) { + $wxsystray='--no-wx-systray'; + $vlcdummyquiet='-d --syslog'; + $vlcstart="/usr/bin/vlc"; + $wwwstartbeg="wget --quiet --output-document=/dev/null --output-file=/dev/null '"; + $wwwstartend="'"; +} + + $MENU_ALT=array(array('lien'=>'add.php', 'nom'=>'Nouvel enregistrement', 'selected'=>0), array('lien'=>'index1.php?module=see', 'nom'=>'Programm\xE9s', 'selected'=>0), array('lien'=>'/module/films/index1.php?directory='.urlencode($ini['multiposte']['multiposte']), 'nom'=>'Enregistr\xE9s', 'selected'=>0)); @@ -25,18 +41,28 @@ $id = $_GET['id']; // Suppression des commandes et fichiers - $at=shell_exec('at'); - if(eregi(urldecode($_GET['fichierbat']),$at)) - { - $at=exec('at '.$_GET['task'].' /delete'); - $at.=exec('at '.$_GET['taskend'].' /delete'); - } + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $at=shell_exec('at'); + if(eregi(urldecode($_GET['fichierbat']),$at)) + { + $at=exec('at '.$_GET['task'].' /delete'); + $at.=exec('at '.$_GET['taskend'].' /delete'); + } + } else { + // Support eventuel de /etc/cron.d + $string1 = $_GET['fichierbat']; + $string2 = ereg_replace(".bat","-end.bat",$string1); + remove_from_cron($string1); + remove_from_cron($string2); + } @unlink(urldecode($_GET['fichierbat'])); @unlink(ereg_replace(".bat","-end.bat",urldecode($_GET['fichierbat']))); // Modification des commandes at et des fichiers bat - $fichier = realpath($ini['multiposte']['multiposte']).'\\'.$chaine[1].' - '.date("d-m-y H\hi", $deb).'.mpg'; - $fichierbat = $chaine[1].' - '.date("d-m-y H\hi", $deb).'.bat'; + + // Note: le double slash est DOS specifique, or DOS comprend sans probleme le slash + $fichier = realpath($ini['multiposte']['multiposte']).'/'.$chaine[1].' - '.date("d-m-y H\hi", $deb).'.mpg'; + $fichierbat = $chaine[1].' - '.date("d-m-y H\hi", $deb).'.bat'; $fichierbat2 = $chaine[1].' - '.date("d-m-y H\hi", $deb).'-end.bat'; //Cr\xE9ation du fichier bat de lancement @@ -48,46 +74,58 @@ //Profils d'encodage if($ini['multiposte']['cvid']!='none' AND $ini['multiposte']['caud']!='none'){ - $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini['multiposte']['cvid'].',vb='.$ini['multiposte']['bvid'].',scale=1,acodec='.$ini['multiposte']['caud'].',ab='.$ini['multiposte']['baud'].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"} - start http://localhost:8080/lecteur/lunch_rec.php?id='.$id; + $link = $vlcstart.' '.$wxsystray.' --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet '.$vlcdummyquiet.' -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini['multiposte']['cvid'].',vb='.$ini['multiposte']['bvid'].',scale=1,acodec='.$ini['multiposte']['caud'].',ab='.$ini['multiposte']['baud'].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"}'."\n".$wwwstartbeg.'http://localhost:8080/lecteur/lunch_rec.php?id='.$id.$wwwstartend; }elseif($ini['multiposte']['cvid']=='none' AND $ini['multiposte']['caud']=='none'){ - $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"} - start http://localhost:8080/lecteur/lunch_rec.php?id='.$id; + $link = $vlcstart.' '.$wxsystray.' --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet '.$vlcdummyquiet.' -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"}'."\n".$wwwstartbeg.'http://localhost:8080/lecteur/lunch_rec.php?id='.$id.$wwwstartend; }elseif($ini['multiposte']['cvid']!='none' AND $ini['multiposte']['caud']=='none'){ - $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini['multiposte']['cvid'].',vb='.$ini['multiposte']['bvid'].',scale=1} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"} - start http://localhost:8080/lecteur/lunch_rec.php?id='.$id; + $link = $vlcstart.' '.$wxsystray.' --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet '.$vlcdummyquiet.' -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini['multiposte']['cvid'].',vb='.$ini['multiposte']['bvid'].',scale=1} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"}'."\n".$wwwstartbeg.'http://localhost:8080/lecteur/lunch_rec.php?id='.$id.$wwwstartend; }elseif($ini['multiposte']['cvid']!='none' AND $ini['multiposte']['caud']=='none'){ - $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{acodec='.$ini['multiposte']['caud'].',ab='.$ini['multiposte']['baud'].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"} - start http://localhost:8080/lecteur/lunch_rec.php?id='.$id; - } + $link = $vlcstart.' '.$wxsystray.' --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet '.$vlcdummyquiet.' -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{acodec='.$ini['multiposte']['caud'].',ab='.$ini['multiposte']['baud'].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"}'."\n".$wwwstartbeg.'http://localhost:8080/lecteur/lunch_rec.php?id='.$id.$wwwstartend; + } - $variable = 'SET vlcpath="'.realpath("../../../").'" + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $variable = 'SET vlcpath="'.realpath("../../../").'" CD %vlcpath% '.$link.' exit'; - - $fp = fopen(realpath($USER).'\\'.$fichierbat,"a+"); + } else { + $variable = 'vlcpath="'.realpath("../../")."\"\ncd \$vlcpath\n".$link."\nexit\n"; + } + + // Le double slash est DOS specifique, or DOS comprend sans probleme le slash + $fp = fopen(realpath($USER).'/'.$fichierbat,"a+"); fputs($fp,$variable); fclose($fp); //Cr\xE9ation du fichier bat de fermeture - $link2 = 'start http://localhost:8080/lecteur/stop_rec.php?id='.$id; - $variable = 'SET vlcpath="'.realpath("../../../").'" + $link2 = $wwwstartbeg.'http://localhost:8080/lecteur/stop_rec.php?id='.$id.$wwwstartend; + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $variable = 'SET vlcpath="'.realpath("../../../").'" CD %vlcpath% '.$link2.' exit'; + } else { + $variable = 'vlcpath="'.realpath("../../../")."\"\ncd \$vlcpath\n".$link2."\nexit\n"; + } $fp = fopen($USER.$fichierbat2,"w+"); fputs($fp,$variable); fclose($fp); //Enregistrement des taches - $output = exec('at '.date("H:i", $deb).' /interactive /next:'.date("d", $deb).' "'.realpath($USER.$fichierbat).'"'); - $output2 = exec('at '.date("H:i", $end).' /interactive /next:'.date("d", $end).' "'.realpath($USER.$fichierbat2).'"'); - $debut = 'ID = '; - $fin = ''; - preg_match("/$debut(.{1,2})$fin/s", $output, $valeur); - preg_match("/$debut(.{1,2})$fin/s", $output2, $valeur2); + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $output = exec('at '.date("H:i", $deb).' /interactive /next:'.date("d", $deb).' "'.realpath($USER.$fichierbat).'"'); + $output2 = exec('at '.date("H:i", $end).' /interactive /next:'.date("d", $end).' "'.realpath($USER.$fichierbat2).'"'); + $debut = 'ID = '; + $fin = ''; + preg_match("/$debut(.{1,2})$fin/s", $output, $valeur); + preg_match("/$debut(.{1,2})$fin/s", $output2, $valeur2); + } else { + add_to_cron(realpath($USER.$fichierbat), $deb, + realpath($USER.$fichierbat2), $end); + // les valeurs n'ont ici plus d'importance + $valeur[1] = $valeur2[1] = 99999; + } // Modification de end dans SQLite $db = sqlite_open('../../_utilisateur/records.db', 0666); @@ -164,7 +202,9 @@ /********************* A FAIRE ******************/ if( $Heures_OK){ // ATTENTION Vlc a des probl\xE8mes avec les accents lors de la cr\xE9ation du fichier --- Mais \xE7a marche avec la 0.8.6 !!! - $fichier = realpath($ini[multiposte][multiposte]).'\\'.$chaine[1].' - '.date("d-m-y H\hi", $deb).'.mpg'; + + // Le double slash est DOS specifique, or DOS comprend sans probleme le slash + $fichier = realpath($ini[multiposte][multiposte]).'/'.$chaine[1].' - '.date("d-m-y H\hi", $deb).'.mpg'; $fichierbat = $chaine[1].' - '.date("d-m-y H\hi", $deb).'.bat'; $fichierbat2 = $chaine[1].' - '.date("d-m-y H\hi", $deb).'-end.bat'; @@ -182,42 +222,57 @@ //Profils d'encodage if($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]!='none'){ - $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini[multiposte][cvid].',vb='.$ini[multiposte][bvid].',scale=1,acodec='.$ini[multiposte][caud].',ab='.$ini[multiposte][baud].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"} - start http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1); + $link = $vlcstart.' '.$wxsystray.' --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet '.$vlcdummyquiet.' -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini['multiposte']['cvid'].',vb='.$ini['multiposte']['bvid'].',scale=1,acodec='.$ini['multiposte']['caud'].',ab='.$ini['multiposte']['baud'].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"}'."\n".$wwwstartbeg.'http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1).$wwwstartend; }elseif($ini[multiposte][cvid]=='none' AND $ini[multiposte][caud]=='none'){ - $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"} - start http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1); + $link = $vlcstart.' '.$wxsystray.' --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet '.$vlcdummyquiet.' -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"}'."\n".$wwwstartbeg.'http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1).$wwwstartend; }elseif($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]=='none'){ - $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini[multiposte][cvid].',vb='.$ini[multiposte][bvid].',scale=1} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"} - start http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1); + $link = $vlcstart.' '.$wxsystray.' --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet '.$vlcdummyquiet.' -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini['multiposte']['cvid'].',vb='.$ini['multiposte']['bvid'].',scale=1} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"}'."\n".$wwwstartbeg.'http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1).$wwwstartend; }elseif($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]=='none'){ - $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{acodec='.$ini[multiposte][caud].',ab='.$ini[multiposte][baud].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"} - start http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1); - } + $link = $vlcstart.' '.$wxsystray.' --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet '.$vlcdummyquiet.' -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{acodec='.$ini['multiposte']['caud'].',ab='.$ini['multiposte']['baud'].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini['multiposte']['muxer'].',url="'.$fichier.'"}'."\n".$wwwstartbeg.'http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1).$wwwstartend; + } - $variable = 'SET vlcpath="'.realpath("../../../").'" + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $variable = 'SET vlcpath="'.realpath("../../../").'" CD %vlcpath% '.$link.' exit'; - - $fp = fopen(realpath($USER).'\\'.$fichierbat,"a+"); + } else { + // Support eventuel de /etc/cron.d + $variable = 'vlcpath="'.realpath("../../")."\"\ncd \$vlcpath\n".$link."\nexit\n"; + } + + // Le double slash est DOS specifique, or DOS comprend sans probleme le slash + $fp = fopen(realpath($USER).'/'.$fichierbat,"a+"); fputs($fp,$variable); fclose($fp); //Cr\xE9ation du fichier bat de fermeture - $link2 = 'start http://localhost:8080/lecteur/stop_rec.php?id='.($row[0]+1); - $variable = 'SET vlcpath="'.realpath("../../../").'" + $link2 = $wwwstartbeg.'http://localhost:8080/lecteur/stop_rec.php?id='.($row[0]+1).$wwwstartend; + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $variable = 'SET vlcpath="'.realpath("../../../").'" CD %vlcpath% '.$link2.' exit'; + } else { + // Support eventuel de /etc/cron.d + $variable = 'vlcpath="'.realpath("../../")."\"\ncd \$vlcpath\n".$link2."\nexit\n"; + } $fp = fopen($USER.$fichierbat2,"w+"); fputs($fp,$variable); fclose($fp); //Enregistrement des taches - $output = exec('at '.date("H:i", $deb).' /interactive /next:'.date("d", $deb).' "'.realpath($USER.$fichierbat).'"'); - $output2 = exec('at '.date("H:i", $end).' /interactive /next:'.date("d", $end).' "'.realpath($USER.$fichierbat2).'"'); + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $output = exec('at '.date("H:i", $deb).' /interactive /next:'.date("d", $deb).' "'.realpath($USER.$fichierbat).'"'); + $output2 = exec('at '.date("H:i", $end).' /interactive /next:'.date("d", $end).' "'.realpath($USER.$fichierbat2).'"'); + } else { + // Support eventuel de /etc/cron.d + add_to_cron(realpath($USER.$fichierbat), $deb, + realpath($USER.$fichierbat2), $end); + // Ici les output n'ont plus d'importance + $output = $output2 = "Et voila"; + } //if(eregi("T\x83che ajout\x82e",$output)){ // Probl\xE8me d'encodage des accents dans le fichier !! if(isset($output)){ // Ce test n'est pas bon test !!! @@ -226,10 +281,33 @@ $msg .= 'Sur '.$chaine[1].' le '.date("d/m/y H:i", $deb); } - $debut = 'ID = '; - $fin = ''; - preg_match("/$debut(.{1,2})$fin/s", $output, $valeur); - preg_match("/$debut(.{1,2})$fin/s", $output2, $valeur2); + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $debut = 'ID = '; + $fin = ''; + preg_match("/$debut(.{1,2})$fin/s", $output, $valeur); + preg_match("/$debut(.{1,2})$fin/s", $output2, $valeur2); + } else { + // On devrait utiliser une table avec un auto increment + $db = sqlite_open('../../_utilisateur/records.db', 0666); + $requete='SELECT COUNT(*) AS currentrecords FROM records'; + $result = sqlite_query($db,$requete); + $row = sqlite_fetch_array($result); + sqlite_close($db); + if ($row['currentrecords'] == 0) { + // Table vide + $valeur[1] = 1; + } else { + // Je sais, ca n'est pas atomique + // A ameliorer + $db = sqlite_open('../../_utilisateur/records.db', 0666); + $requete='SELECT MAX(id) AS maxid FROM records'; + $result = sqlite_query($db,$requete); + $row = sqlite_fetch_array($result); + $valeur[1] = $row['maxid']; + sqlite_close($db); + } + $valeur2[1] = $valeur[1]+1; + } sqlite_query($db,'INSERT INTO records VALUES ("'.($row[0]+1).'","'.$_GET['chaine'].'","'.$deb.'","'.$end.'","'.realpath($USER.$fichierbat).'","'.$valeur[1].'","'.$valeur2[1].'","En attente")'); } Modified: trunk/module/multiposte/index1.php =================================================================== --- trunk/module/multiposte/index1.php 2007-05-13 20:26:26 UTC (rev 150) +++ trunk/module/multiposte/index1.php 2007-05-13 20:26:51 UTC (rev 151) @@ -35,12 +35,20 @@ $requete='SELECT * from records WHERE id='.$_GET['id']; $result = sqlite_query($db,$requete); $result = sqlite_fetch_array($result); - $at=shell_exec('at'); - if(eregi(addslashes($result['fichierbat']),$at)) - { - $at=exec('at '.$result['task'].' /delete'); - $at.=exec('at '.$result['taskend'].' /delete'); - } + if (PHP_OS == "WIN32" || PHP_OS == "WINNT") { + $at=shell_exec('at'); + if(eregi(addslashes($result['fichierbat']),$at)) + { + $at=exec('at '.$result['task'].' /delete'); + $at.=exec('at '.$result['taskend'].' /delete'); + } + } else { + // Support eventuel de /etc/cron.d + $string1 = $result['fichierbat']; + $string2 = ereg_replace(".bat","-end.bat",$string1); + remove_from_cron($string1); + remove_from_cron($string2); + } @unlink($result['fichierbat']); @unlink(ereg_replace(".bat","-end.bat",$result['fichierbat'])); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |