JavaScript — обратный отсчет на стороне сервера PHP

Есть ли способ использовать PHP для таймера обратного отсчета на стороне сервера?

Как это:

  • Таймер обратного отсчета должен быть равен любому входящему на сайт
  • Как только таймер достигнет нуля, код должен выполняться. Но только один раз.

Представьте себе сайт с джекпотом, когда таймер достигнет нуля, некоторые запросы должны быть выполнены. Но если на сайте будет 50 человек, то будет выполнено 50 запросов. Так что это должно быть на стороне сервера. Как я могу решить это?

Используете cronjobs каждую секунду? Веб-страница, открытая на VPS, которая сама обрабатывает таймер по «секретной» ссылке?
Какой-то скрипт live-php?

-3

Решение

Обратный отсчет PHP может быть закодирован так:

//You must call the function session_start() before
//you attempt to work with sessions in PHP!
session_start();

//Check to see if our countdown session
//variable has been initialized.
if(!isset($_SESSION['countdown'])){
//Set the countdown to 120 seconds.
$_SESSION['countdown'] = 120;
//Store the timestamp of when the countdown began.
$_SESSION['time_started'] = time();
}

//Get the current timestamp.
$now = time();

//Calculate how many seconds have passed since
//the countdown began.
$timeSince = $now - $_SESSION['time_started'];

//How many seconds are remaining?
$remainingSeconds = abs($_SESSION['countdown'] - $timeSince);

//Print out the countdown.
echo "There are $remainingSeconds seconds remaining.";

//Check if the countdown has finished.
if($remainingSeconds < 1){
//Finished! Do something.
}

Из-за природы PHP эта «проверка по таймеру» будет происходить только при загрузке страницы. Если вы хотите инициировать выполнение некоторого кода именно тогда, когда счетчик достигнет 0, вы должны использовать JavaScript для обнаружения прохода coundtdown и инициировать с помощью AJAX некоторый код PHP. Я знаю, что это не полное решение, но это, по крайней мере, часть 🙂

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector