Серверное время (PHP + JS)
Re: Серверное время (PHP + JS)
То есть сначала методом php взять время в секундах из date(), потом перевести в секунды время до конечной точки и вычесть из него время в секундах из date(). Результат записать в <div id="timer" style="display:none">100500</div>
Так? Я что то совсем запутался. Прочитал ваш текст раз 20 прежде чем хоть что то понял....
Так? Я что то совсем запутался. Прочитал ваш текст раз 20 прежде чем хоть что то понял....
Re: Серверное время (PHP + JS)
Да, сначала методом пхп взять время в секундах. Это делают две функции - time() (возвращает время в секундах от начала времени) и strtotime("Y-m-D H:i") (перегоняет поданную дату в секунды от начала времени). Разница между ними - и будет разница между этими двумя датами в секундах.wierusna писал(а):То есть сначала методом php взять время в секундах из date(), потом перевести в секунды время до конечной точки и вычесть из него время в секундах из date(). Результат записать в <div id="timer" style="display:none">100500</div>
Так? Я что то совсем запутался. Прочитал ваш текст раз 20 прежде чем хоть что то понял....
Я противник написания html кода в php файлах (по крайней мере в этой ситуации) и предпочитаю при помощи яваскрипта запрашивать у скрипта на сервере (при помощи post или get запроса) это самое время и записываю его в нужный мне div.
Re: Серверное время (PHP + JS)
Немного не понял эту строчку
time() (возвращает время в секундах от начала времени) и strtotime("Y-m-D H:i") (перегоняет поданную дату в секунды от начала времени). Разница между ними - и будет разница между этими двумя датами в секундах.
Нужно взять одну из двух функций или же обе?
*от начала времени* - это что?
*Разница между ними* - если брать одну из функций. то между чем и чем разница?
Боже...мои мозги кипят....
time() (возвращает время в секундах от начала времени) и strtotime("Y-m-D H:i") (перегоняет поданную дату в секунды от начала времени). Разница между ними - и будет разница между этими двумя датами в секундах.
Нужно взять одну из двух функций или же обе?
*от начала времени* - это что?
*Разница между ними* - если брать одну из функций. то между чем и чем разница?
Боже...мои мозги кипят....
Re: Серверное время (PHP + JS)
wierusna писал(а):Немного не понял эту строчку
time() (возвращает время в секундах от начала времени) и strtotime("Y-m-D H:i") (перегоняет поданную дату в секунды от начала времени). Разница между ними - и будет разница между этими двумя датами в секундах.
Нужно взять одну из двух функций или же обе?
*от начала времени* - это что?
*Разница между ними* - если брать одну из функций. то между чем и чем разница?
Боже...мои мозги кипят....
P.S. Вы уж простите, что так толсто, http://php.net/manual/ru/function.time.php . Включайте думалку уже, я уже не знаю, что тут осталось, кроме как число посчитать.Возвращает количество секунд, прошедших с начала Эпохи Unix (The Unix Epoch, 1 января 1970 00:00:00 GMT) до текущего времени.
Re: Серверное время (PHP + JS)
Спасибо вам большое!! Все получилось)
Сделал вот так, ибо не знаю джава скрипт и не умею делать Post запрос через него
Осталось еще пара вопросов:
1. Этот скрипт сильно нагружает сервер если онлайн сидят допустим 500 человек одновременно?
2. Как вместо document.getElementById("text").innerHTML = "Отсчет закончен "; сделать загрузку текста из файла .txt (однострочный) пользуясь этим уроком http://flapps.ru/forum/post40653.html#p40653
Спасибо еще раз!
Сделал вот так, ибо не знаю джава скрипт и не умею делать Post запрос через него
Код: Выделить всё
<?$time = time();$timeFINISH = strtotime("2012-11-02 17:41");$timeDIFF = $timeFINISH - $time; ?> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script> <head><script> timer = function() { var time_to = document.getElementById('timer'); time_to.innerHTML--; if(time_to.innerHTML >= 0) { var dsec = time_to.innerHTML % 60; var dmin = ((time_to.innerHTML - dsec) % 3600)/60; var dhour = ((time_to.innerHTML - dsec - dmin*60)/3600) % 24; var dday = (time_to.innerHTML - dsec - dmin*60 - dhour*3600)/86400; if(dday % 10 === 1 && dday !== 11) dday = dday + " день, "; else if(dday % 10 === 2 && dday !== 12) dday = dday + " дня, "; else if(dday % 10 === 3 && dday !== 13) dday = dday + " дня, "; else if(dday % 10 === 4 && dday !== 14) dday = dday + " дня, "; else dday = dday + " дней, "; if(dhour < 10) dhour = "0" + dhour; if(dmin < 10) dmin = "0" + dmin; if(dsec < 10) dsec = "0" + dsec; document.getElementById("time").innerHTML = dhour + ":" + dmin + ":" + dsec; } else { document.getElementById("text").innerHTML = "Отсчет закончен :)"; document.getElementById("time").innerHTML = ""; } setTimeout(timer, 1000); } $(document).ready(function(){ timer(); }); </script></head> <body> <div id="timer" style="display:none"><? echo $timeDIFF ?></div><!--Время в секундах до финальной точки--> <div id="time"></div> <div id="text"></div> <div id="time_to"></div> </body>
1. Этот скрипт сильно нагружает сервер если онлайн сидят допустим 500 человек одновременно?
2. Как вместо document.getElementById("text").innerHTML = "Отсчет закончен "; сделать загрузку текста из файла .txt (однострочный) пользуясь этим уроком http://flapps.ru/forum/post40653.html#p40653
Спасибо еще раз!
Re: Серверное время (PHP + JS)
wierusna писал(а):Спасибо вам большое!! Все получилось)
Сделал вот так, ибо не знаю джава скрипт и не умею делать Post запрос через негоКод: Выделить всё
Осталось еще пара вопросов: 1. Этот скрипт сильно нагружает сервер если онлайн сидят допустим 500 человек одновременно? 2. Как вместо document.getElementById("text").innerHTML = "Отсчет закончен "; сделать загрузку текста из файла .txt (однострочный) пользуясь этим уроком http://flapps.ru/forum/post40653.html#p40653 Спасибо еще раз![/quote] 1) Отсчет идет на стороне клиента, сервер задействован только 1 раз при открытии страницы 2) Я предпочитаю работать с jQuery и post, а не аяксом. Мне кажется достаточно только почитать про файлы в php, что бы понять, как делать.
Re: Серверное время (PHP + JS)
То есть сначала открыть текстовикSerge писал(а):wierusna писал(а): 2) Я предпочитаю работать с jQuery и post, а не аяксом. Мне кажется достаточно только почитать про файлы в php, что бы понять, как делать.
Код: Выделить всё
$openTXT = fopen('ID.txt', 'r');
Код: Выделить всё
document.getElementById("text").innerHTML = "<? echo $openTXT ?>";
Если есть еще какой нибудь (сберегающий трафик) вариант, подскажите. Пользуюсь бесплатным хостингом) Поэтому это так важно.
Re: Серверное время (PHP + JS)
Попробовал так
И в скрипт вставил это
Но вместо цифр, которые записаны в текстовик, выдает пустое место. А если вывести просто print $buff; в php, то все работает.
Код: Выделить всё
$file = fopen("путь/finish.txt","r"); if(!file) { echo("Ошибка открытия файла"); } else { $buff = fread ($file, 15); }
Код: Выделить всё
document.getElementById("text").innerHTML = "<? print $buff; ?>";
Re: Серверное время (PHP + JS)
Потому что это, простите, хрень. Нельзя мешать 2 языка программирования. Как это сделать - я уже отвечал, код писать не хочу, Вы же ничему не учитесь.wierusna писал(а):Попробовал такИ в скрипт вставил этоКод: Выделить всё
$file = fopen("путь/finish.txt","r"); if(!file) { echo("Ошибка открытия файла"); } else { $buff = fread ($file, 15); }
Но вместо цифр, которые записаны в текстовик, выдает пустое место. А если вывести просто print $buff; в php, то все работает.Код: Выделить всё
document.getElementById("text").innerHTML = "<? print $buff; ?>";
Re: Серверное время (PHP + JS)
Нашел как выводить текст через get
Но как мне alert заменить на var response = .......;
И эту переменную вставить в
Прошу помогите! Я обратился в этот раздел форума потому, что он называется ПРОСИМ ГОТОВОЕ. Мне нужно закончить с кодовой частью как можно быстрее.....времени на изучение JavaScript нету(
Код: Выделить всё
$.get("finish.txt", function(data) { alert(data); });
И эту переменную вставить в
Код: Выделить всё
document.getElementById("text").innerHTML = response;