Вот мой код:
<code><?php
require_once 'dbconnect.php';
function execInBackground($cmd) {
if (substr(php_uname(), 0, 7) == "Windows"){
pclose(popen("start /B ". $cmd, "r"));
}
else {
exec($cmd . " > /dev/null &");
}
}
if(isset($_GET['date'])){
//CHECK LOCK
$checkLock = "Select IS_FREE_LOCK('overnight') as `lock`;";
$result = mysql_query($checkLock) or die(mysql_error());
while($information = mysql_fetch_array($result)){
if($information['lock'] == 0){
die('Overnight is already running, please try again later.');
}
}
execInBackground("php overnightQueries.php {$_GET['date']}");
//echo "<pre>".print_r($output2, true)."
";
header ('Обновить: 3; url = index.php');
die ('выполнение запросов ...');
}
еще {
умереть («ПОЖАЛУЙСТА, УСТАНОВИТЬ ДАТУ»);
}
?>
Я использую Windows-машину.
Я получаю следующие предупреждения:
Предупреждение: popen (start / B php overnightQueries.php 2011_08_12, r): нет ошибки в C: \ inetpub \ GTSA \ runOvernight.php в строке 5
И
Предупреждение: pclose () ожидает, что параметр 1 будет ресурсом, логическое значение указано в C: \ inetpub \ GTSA \ runOvernight.php в строке 5