Ага, я кажись понял где у вас может быть косяк. У вас результатом php кода является какое-то динамическое значение, правильно? Каждые 2 секунды, оно предполагается разное?
У вас php код выполнится только 1 раз, при первичном построении страницы и документа в целом.
И с каждой интерацией таймера, у вас между скобок у value (var = value(.....);) будет одно и тоже значение, которое вставилось туда при загрузке страницы. Оно не будет меняться, так как вы его туда "вписали" при загрузке страницы.
Без ajax думаю не обойтись.
используйте jQuery и, к примеру, $.get()
var val;
$.get("/you_script.php",function (data)
{
val = data;
});
запрашивает ваш php-скрипт, и по окончании вызывает указанную вторым параметром функцию, в которую через параметр data передаёт результат выполнения вашего php-скрипта.
Пример
Если у вас результатом выполнения вашего php будет являться echo 1; то в data и будет 1
А дальше пихайте полученное значение уже куда вам надо.
Во избежании проблем с таймером, можно поступить так:
//=======
var val,my_interval;
function random()
{
if (my_interval)
clearInterval(my_interval); //останавливаем таймер на время получения данных Ajax'ом
$.get("/you_script.php",function (data)
{
val = data;
my_interval = setInterval(random, 2000); //заново ставим таймер, после того как получены данные от вашего скрипта
});
}
setInterval(randomValue, 2000); Всё верно.
А с чего вы взяли что не работает? Проверьте выводом в консоль, или алертом. Может у вас внутри функции что-то ошибку выкидывает.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.