Подскажите простой скрипт ротатора на php.

Loko
На сайте с 28.01.2007
Offline
101
638

нужно чтобы ротация была такая:

Заходит пользователь - показывается первый код. Пользователь переходит на другую страницу - показывается второй код. Переходит на третью - третий код и т.п. Когда коды заканчиваются - все сначала, думаю, это реализовывается с использованием сессий. Если у кого есть готовый, поделитесь, пожалуйста, чего-то нагуглить ничего не получилось... :). Заранее спасибо.

P.S. Не стоит предлагать платные услуги. За деньги я и сам напишу ;)

[Удален]
#1

Есть на DLE, НО если один баннер не покажется то другие тоже будут стоять на месте...

Поэтому тоже нуждаюсь который будет или от балды крутить или последовательно, но чтобы не останавливался на не показанных баннерах ;)

[Удален]
#2

Также интересовало, но так как я это не смог реализировать, забросил.... и Вам советую

Loko
На сайте с 28.01.2007
Offline
101
#3
Dimazzan:
Есть на DLE, НО если один баннер не покажется то другие тоже будут стоять на месте...
Поэтому тоже нуждаюсь который будет или от балды крутить или последовательно, но чтобы не останавливался на не показанных баннерах

мне не надо DLE, мне надо, чтобы просто голый php... Ладно, сейчас один фиг делать нечего, буду соображать :)

Loko добавил 14.02.2009 в 18:00

Во, наваял 😂. Критиковать за безграмотность не надо, а вот исправить, подсказать или написать все заново - это пожалуйста. Как уже писал раньше, создается последовательность кодов. которые показываются пользователю по очереди и по кругу. Кавычки в коде надо экранировать... Количество неограничено... Мне, в общем, это и нужно было...


<?php
session_start();

$cod[]="Код 1";
$cod[]="Код 2";
$cod[]="Код 3";
$cod[]="Код 4";
$cod[]="Код 5";
$cod[]="Код 6";
$cod[]="Код 7";
$cod[]="Код 8";

$c=count($cod); //количество кодов
$c--; //максимальный индекс

if(!isset($_SESSION['count'])) { //если зашел первый раз
$_SESSION['count']=0; //...показываем первый код
$key=$_SESSION['count'];
}else{ //если не первый
$_SESSION['count']++; //...увеличиваем идекс
$key=$_SESSION['count'];
if($_SESSION['count']>=$c) $_SESSION['count']=-1; //и все сначала...
}

if($c==0) $key=0; //если код всего один
echo $cod[$key];
?>
Dreammaker
На сайте с 20.04.2006
Offline
569
#4

Loko, перепишите на куки.

Поисковые машины не работают с куками, а значит сессия для них будет стартоваться с дописыванием к урлам идентификаторов . Соответственно будут генерироваться дубли страниц. Или же для этих страниц отключайте переписывание урлов.

[Удален]
#5

Извращенство написали, ТС =)

Dreammaker, зачем что-то переписывать если это регулируется настройками php. У меня например у поисковых машин сессии просто не заводятся, потому что куки не получают а ID в урл дописывать запрещено.


$code=array("код1","код2","код3");
session_start();

if (!isset($_SESSION['page_counter']))
$_SESSION['page_counter']=0;

echo $code[$_SESSION['page_counter']%count($code)];

$_SESSION['page_counter']++;

Loko
На сайте с 28.01.2007
Offline
101
#6
Dreammaker:
Loko, перепишите на куки.

Поисковые машины не работают с куками, а значит сессия для них будет стартоваться с дописыванием к урлам идентификаторов . Соответственно будут генерироваться дубли страниц. Или же для этих страниц отключайте переписывание урлов.

ага. Спасибо :). Мне сойдет и так... Индексироваццо не будет...

Loko добавил 14.02.2009 в 19:44

neolord:
Извращенство написали, ТС =)

а я че. Я ниче... я php-то знаю постольку-поскольку. Работает и бог с ним 😂 Спасибо, буду ваш код юзать :)

Dreammaker
На сайте с 20.04.2006
Offline
569
#7
neolord:
Dreammaker, зачем что-то переписывать если это регулируется настройками php.

Я ж написал :)

Dreammaker:
Или же для этих страниц отключайте переписывание урлов.
Vladimir
На сайте с 07.06.2004
Offline
614
#8
Loko:
нужно чтобы ротация была такая:
Заходит пользователь - показывается первый код. Пользователь переходит на другую страницу - показывается второй код. Переходит на третью - третий код и т.п. Когда коды заканчиваются - все сначала, думаю, это реализовывается с использованием сессий. Если у кого есть готовый, поделитесь, пожалуйста, чего-то нагуглить ничего не получилось... :). Заранее спасибо.

P.S. Не стоит предлагать платные услуги. За деньги я и сам напишу ;)

function sluchai(&$img,$filename)

{

$f = fopen($filename, 'r');

$i = 0;

while(!feof($f)) {

$tmp = fgets($f, 8196);

if (!rand(0, $i++)) $string = $tmp;

}

fclose($f);

$img = trim($string);

return $img;

}

//Вызов функции

sluchai(img.txt);

В файле текст:

код1

код2

......

Аэройога ( https://vk.com/aeroyogadom ) Йога в гамаках ( https://vk.com/aero_yoga ) Аэройога обучение ( https://aeroyoga.ru ) и просто фото ( https://weandworld.com )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий