Помогите найти ошибку в коде
11416 сообщений
#15 лет назад
И так имеем код:
<?
$p1= $_GET+1;
$x1= $_GET+1;
$p_max = 60;
echo "<a href =\"http://site.ru/?p=$p1&x=$x1\">http://site.ru/?p=$p1&x=$x1</a>";
?>
<script>
var p_max = <?php echo $p_max;?>;
var p = <?php echo $p1;?>;
function sec() {
document.location="<?echo "http://site.ru/?p=".$p1."&x=".$x1."";?>";
}
if (p < p_max) setInterval(sec, 5000);
</script>
Cуть его в следующем... Допустим запускается скрипт site.ru?p=1&x=1 после его выполнения нужно выполнить снова его же, но с другими параметрами p и x, прибавить к ним единичку
Запускаю скрипт.
в echo выводит правильно адрес ссылки с прибавленными p и x
в document.location в исходном коде тоже ссылка верная стоит, с прибавленными значениями...
Но в адресной строке все время остаются не прибавленные параметры, и никак не хотят прибавляться... Весь моск сломал.. И вроде верно все, но url не меняется,
не прибавляются к p и x по единичке

В чем ошибка?
1594 сообщения
#15 лет назад
1. в строке 2 и 3 сделайте $p1= intval($_GET)+1;
$x1= intval($_GET)+1;
к делу не относится, но всё же....
2. А страничка перезагружается после выполнения скрипта? Должна, а то параметры в адресной стрке не изменятся...
3. Насколько я понял, за перегрузку странички отвечает функция sec()
А не пробовали сделать на PHP через header() ?
1594 сообщения
#15 лет назад
То есть примерно в такой вид привести<?php
ob_start();
$p1= intval($_GET)+1;
$x1= intval($_GET)+1;
$p_max = 60;
echo "<a href =\"http://site.ru/?p=$p1&x=$x1\">http://site.ru/?p=$p1&x=$x1</a>";
function sec()
{
header("Location: ссылка;);
}
if ($p1 < $p_max)
{
sec();
sleep(5000);
}
ob_end_flush();
?>
457 сообщений
#15 лет назад
Правда я немного не понял почему setInterval ? а не setTimeout ?каждых 5-ть секунд перенаправлять?

457 сообщений
11416 сообщений
#15 лет назад
Anexroid, Ваш способ не сработал 
Document.location.href тоже самое осталось
setInterval("sec();", 5000); сделал, аналогично...
Цитата ("ADI"):
каждых 5-ть секунд перенаправлять?
Да, каждых 5 секунд перенаправлять... Делаются запросы к разным страничкам другого сайта, и пишется все в БД
Оно обновляется, но в url адрес не меняется

Хотя другой человек поставил отдельно этот скрипт к себе, у него все работало... У меня перед ним еще строчек 300 кода... Может что-то конфликтует?
Не знаю важно это или нет... Перед выполнением этого скрипта работает еще скрипт секунд 20, потом выполняться должно то что тут
Может сервак такой? Хотя вроде хороший хостинг...
Поставил сейчас только один этот код, без скрипта, что до него работает, все отлично

Я понял.....
делаем вот так
if (p < p_max) sec();
и все работает... Всем спасибо огромное...