Цитата:
Как это лучше исполнить, я как раз и хочу тут у вас узнать. Помогите с кодом люди добрые :cray: |
Цитата:
|
Цитата:
|
Скрипт клиентский ни из какого файла ничего тянуть не может. В простейшем случае, клиентских усилий может и не потребоваться, если у клиента включены куки. В этом случае при запросе страницы сервер проверяет установлена ли кука у клиента, если нет, то он выводит первый блок (в файле ли он или это базой определяется, не важно, важно что сервер может получать данные любым способом), и устанавливает куку. Если кука установлена, то ее значение увеличивается, сохраняется в куках и уже это значение определяет какой блок выводить.
Что-то более сложное, это уже потребует клиентского сценария. |
я извиняюсь за свои скромные познания, точнее их отсутствие. вот ссылка на скрипт http://phphack.ru/seescript/788/
он меня в принципе устраивает, но я буду выводить через <script src="http://Ваш_адрес/rand_js.php?r=1"></script> нужно только чтобы по порядку строки при ротации выводились, а не в случайном порядке. может кто то допилит код этого скрипта ? черт, там кажется все на php (( глянул rand_js.php код ( я извиняюсь за сумбур |
Какой язык использует сервер?
|
laimas,
Цитата:
|
<?php
//getBanner.php
$visit=isset($_COOKIE['visit'])?(int)$_COOKIE['visit']:0;
$directory=__DIR__.'/banners/';
if(!is_dir($directory))
throw new \Exсeption("Directory [$directory] not found");
$banners=array_diff(scandir($directory),['.','..']);
$response=$directory.$banners[$visit%count($banners)];
$response=file_get_contents($response);
setcookie('visit',++$visit,time()+365*24*3600,'/');
echo $response;
//banners.js
[].filter.call(document.scripts,function(script){
return !!script.src && script.src.indexOf('banners.js')>0;
}).forEach(function(script,index){
if(index)
return;
var xhr=new XMLHttpRequest();
xhr.open('GET','/path/to/getBanner.php?'+Math.random(),true);
xhr.onload=function(){
script.insertAdjacentHTML('beforebegin',this.responseText);
};
xhr.send();
});
//index.html <script src="/path/to/banners.js" async></script> В директории, в которую положите файл "getBanner.php" создайте еще одну директорию с именем "banners", в нее накидайте файлов, контент которых - код вставляемых на страницу баннеров. 1 файл - 1 баннер. В том месте, где расположите подключение js-скрипта появится код баннера. PS. Код не тестировал. Вообще. |
Цитата:
Цитата:
А использование кук вообще исключает клиента, сервер сразу может вывести следующий баннер, зачем все эти навороты на JS? |
Цитата:
Цитата:
Вы можете предложить ТС вариант без js. |
| Часовой пояс GMT +3, время: 08:15. |