У меня небольшая проблема, из-за которой я не могу опустить голову. :-)Задержка с задержкой
Я ищу решение или советы по решению проблемы.
The (часть) старой версии кода выглядит следующим образом:
$oMainsite->checktime(); // In the main program
public function checktime(){
$timeset = $_SESSION['timeset'];
if ($_SESSION['timeset'] == ''){
$_SESSION['timeset'] = date('H:i', strtotime("+5 min"));
} else {
$timeset = $_SESSION['timeset'];
}
$arr_tijd = getdate();
$uren = $arr_tijd["hours"];
if ($uren < 10){
$uren = 0; $uren .= $arr_tijd["hours"];
}
$minuten .= $arr_tijd["minutes"];
if ($minuten < 10){
$minuten = 0; $minuten .= $arr_tijd["minutes"];
}
$tijd = $uren;
$tijd .= ":";
$tijd .= $minuten;
if($timeset <= $tijd){
generate_question();
}
}
Часть функции порождают вопрос() выглядит следующим образом:
........
$timedelay = rand(3,10);
$_SESSION['timeset'] = date('H:i', strtotime("+".$timedelay." min"));
.........
// Display question
В главной программе функция checktime() удаляется только при обновлении страницы. Но если пользователь не вводит пользователя, сайт остается бездействующим, что устраняет тот факт, что функция checktime(), а также функция Generate_question() никогда не выполняются.
Есть ли способ выполнить Checktime(), даже если сайт простаивает? Или мне нужно подойти к этому по-другому? Любая помощь приветствуется.
Похоже на задачу [cron job] (http://net.tutsplus.com/tutorials/php/managing-cron-jobs-with-php-2/). – Mike
'sleep();' возможно? –
Используйте 'setinterval' на JS и загрузите свой PHP-файл (конечно же, с помощью функции внутри него). –