|
вывод значения функции через равный интервал
Всем привет! Начал изучать JS вот.. но чего то успехов мало пока :(
есть блок в который php функция выводит число, которое постоянно меняется: <?php echo "<b>".sizeof(file($base))."</b>"; ?> при обновлении страницы число меняется. надо сделать чтобы число менялось с заданныем интервалом в 1 секунду, без перезагрузки страницы. понимаю что надо использовать setInterval но не меняется(( пробовал вот так:
var number = "<?=sizeof(file($base))?>";
var msgelement = document.getElementById('userOnline').innerHTML=setInterval('number', 1000);
число выводится но не меняется помогите пожалуйста.. измаялся уже. вторые сутки голову ломаю. |
<div id="userOnline"></div>
<script type="text/javascript">
var number = 200;
var msgelement = document.getElementById('userOnline')
setInterval(function() {number+=100;msgelement.innerHTML=number}, 1000);
</script>
|
Deff, спасибо огромное за помошь, работает, только не так как я ожидал.
пример: sizeof(file($base)) - подсчитвает юзеров онлайн, заносит их в файл и потом выводит. открываем страницу в браузере - покажет 1 открваем ту же страницу в ДРУГОМ браузере покажет 2 НО при этом в первом браузере 1 на 2 не изменяется... как быть? UPD: вот функция подсчета юзеров
//выделяем уникальный идентификатор сессии
$id = session_id();
if ($id!=""){
//текущее время
$CurrentTime = time();
//через какое время сессии удаляются
$LastTime = time() - 180;
//файл, в котором храним идентификаторы и время
$base = DOC_ROOT.MODULES."/user_session.txt";
$file = file($base);
$k = 0;
for ($i = 0; $i < sizeof($file); $i++) {
$line = explode("|", $file[$i]);
if ($line[1] > $LastTime) {
$ResFile[$k] = $file[$i];
$k++;
}
}
for ($i = 0; $i<sizeof($ResFile); $i++) {
$line = explode("|", $ResFile[$i]);
if ($line[0]==$id) {
$line[1] = trim($CurrentTime)."\n";
$is_sid_in_file = 1;
}
$line = implode("|", $line); $ResFile[$i] = $line;
}
$fp = fopen($base, "w");
for ($i = 0; $i<sizeof($ResFile); $i++) { fputs($fp, $ResFile[$i]); }
fclose($fp);
if (!$is_sid_in_file) {
$fp = fopen($base, "a-");
$line = $id."|".$CurrentTime."\n";
fputs($fp, $line);
fclose($fp);
}
}
|
Цитата:
|
Цитата:
я вот выше привел полный код скрипта подсчета статистики |
Цитата:
|
Цитата:
а это разве не запрос с интервалом? функция объявлена, и вызывается с интервалом в 1 секунду. но я понять не могу почему не обновляет, ведь данные есть в функции.. и походу она не выполляется снова эта функция.. а просто выводится 1 раз в секунду то что уже было выведено. все, я понял теперь. логичное продолжение: как сделать запрос к файлу? сам ajax запрос я написать могу. не смогу распарсить файл js-ом.. подскажете? структура файла такая хэшID | время oecrgl7etos39s1ntercbh2s24|1356818703 2uc6oc0g2g2alv6cotbb8k1c85|1356818711 ... |
Цитата:
вы посмотрите выдачу HTML кода страницы - там чисто конкретная цифра - а не ява-скрипт функция |
Цитата:
собственно вопрос новый в моем посте выше :) продублирую: как сделать запрос к файлу? сам ajax запрос я написать могу. не смогу распарсить файл jscript-ом.. подскажете? структура файла такая хэшID | время oecrgl7etos39s1ntercbh2s24|1356818703 2uc6oc0g2g2alv6cotbb8k1c85|1356818711 |
Цитата:
Распарсить зная точно - не проблема |
| Часовой пояс GMT +3, время: 21:03. |
|