[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как сделать автоматическую смену баннеров?
Strannik
Добрый день.

Вопрос конечно не совсем по php, но все же.
Задача стоит в том, чтобы выводить сменять банеры на сайте через определенное время.

Подумав и поспрашивав некоторые детали по коду, получилось что-то вроде этого:

setInterval(function() {

var TestName = [];
var requests = [];
TestName.push('0');
for($i=1; $i<8; $i++) {
var id = $i;
requests.push($.post("./Scripts/", {
record:id,
opt:'get_test'
}, function(data){
TestName.push(data);
}));
}

$.when.apply($,requests).done(function(){

for($i=1; $i<8; $i++) {
$('#test'+$i).html('').html(TestName[$i]);

}
alert(TestName);
});

}, 15000);


В принципе все могло бы сойти за решение, но ввиду асинхронных запросов каждый раз получаем новые массивы:

alert(TestName); Случай первый:

0,
<
a href="#"><img src="./images/test1.png"></a>,
<
a href="#"><img src="./images/test2.png"></a>,
<
a href="#"><img src="./images/test3.png"></a>,
<
a href="#"><img src="./images/test4.png"></a>,
<
a href="#"><img src="./images/test5.png"></a>,
<
a href="TestTestTestTestTest.php"><img src="./1358997710.jpg"></a>,
<
a href="#"><img src="./images/test7.png"></a>



alert(TestName); Случай второй:

0,
<
a href="#"><img src="./images/test1.png"></a>,
<
a href="#"><img src="./images/test2.png"></a>,
<
a href="TestTestTestTestTest.php"><img src="./1358997710.jpg"></a>,
<
a href="#"><img src="./images/test3.png"></a>,
<
a href="#"><img src="./images/test5.png"></a>,
<
a href="#"><img src="./images/test4.png"></a>,
<
a href="#"><img src="./images/test7.png"></a>


Как можно заметить массивы отличаются, и на сайте из-за этого будет кавардак(=

Возможно ли сделать проверку - т.е. запускать след. запрос если получен предыдущий?

Или может быть кто знает другое решение?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.