LEOnidUKG

LEOnidUKG
Рейтинг
1784
Регистрация
25.11.2006
Должность
PHP
Интересы
Программирование
futuristian:
Без определения. Просто при каждом хите следующий баннер.

Тогда это обычный рандом. Код самый простой и быстрый я уже дал на первой странице.

---------- Добавлено 24.01.2012 в 14:36 ----------

Joker-jar:
Подкину еще такой вариант для разнообразия:

$banners = array(

'код первого баннера',
'код второго',
...
);

$index = intval( file_get_contents('somefile') ); //--Получаем индекс из файла
$bannr = $banners[$index]; //--Получаем баннер по индексу
file_put_contents( 'somefile', ++$index % count($banners) ); //--Записываем следующий индекс в файл

Это тоже самое, что и rand, уж поверьте мне, мы в универе сами делали эти генераторы случайных чисел.

p.s. оговорюсь, что это называется ПСЕВДО-случайные числа, но тесты проходят, по заданным параметрам.

Они могут вам этим кодом закинуть всё что угодно на сайт, поэтому не надо рисковать.

Joker-jar:
Это называется нормальное распределение. Оно приемлимо работает при большом количестве "показов" (стремящимся к бесконечности). Не думаю, что такой вариант устраивает ТС.

Показы тут НИ ПРИЧЁМ, всё работает идеально и стремящегося к бесконечности нет т.е. все генераторы случайных чисел тестируются и довольно быстро. Тут нужно засечь КОМУ мы будем это показывать.

А вообще ТС, я бы лично не замарачивался, это лишняя нагрузка и хлопоты, сделайте рандом и всё.

futuristian, ещё раз для не понятливых.

Генератор случайных чисел должен быть РАВНОМЕРНЫМ, если он НЕ РАВНОМЕРНЫЕ это НЕ генератор случайных чисел.

rand() в PHP это РАВНОМЕРНЫЙ генератор случайных чисел.

Это значит,

Дано:

1 человек

1 000 000 объявлений

1 000 000 минут

1 человек увидит за 1 000 000 минут все 1 000 000 объявлений, без повторения.

Тут проблема в другом, что такое человек, как его определить?

ВОТ! Это значит нужна система, которая будет записывать IP пользователя или его куки и вносить туда какие баннеры были показаны.

Почитайте, что такое рандом а?

Это и есть равномерный показ за большое количество выборки. Если он будет не равномерный, это не рандом, а глючная фигня.

---------- Добавлено 24.01.2012 в 03:44 ----------

Так что смело в файлик 1 строчка = 1 скрипт

и вывод:

echo $text[array_rand($text=file("banner.txt"))];

Timen:
Также не совсем понял вопрос....

Если нужно определить IP пользователя, то скрипт в файле (99% взято с PhpMyAdmin)...

Это устарело.

Достаточно таково:

function getip()

{

if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown"))

$ip = getenv("HTTP_CLIENT_IP");

elseif (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))

$ip = getenv("HTTP_X_FORWARDED_FOR");

elseif (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))

$ip = getenv("REMOTE_ADDR");

elseif (!empty($_SERVER['REMOTE_ADDR']) && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))

$ip = $_SERVER['REMOTE_ADDR'];

else

$ip = "unknown";

return($ip);

}

Ну и что это за тупой спам?

Информация
К сожалению у вас нет прав для публикации статей на нашем сайте.
Photographer:
LEOnidUKG,
А если не секрет как вы это определили? В индексе яндекса тот же http://www.uwiki.ru есть, сайт сам по себе вроде прилично выглядит... Я б размести статью :) Подскажите пожалуйста новичку критерий проверки

Всё очень просто.

Заходим на страницу, где отображаются добавленные статьи: http://www.uwiki.ru/pages.html

И что мы видим в разделе: Последние публикации?

Правильно, дату: 27.07.2010. А сейчас у нас какой год на дворе? Вот-вот, и так ВСЕ я проверяю руками. 🍿

Вам на какой стадии то нужно определять IP пользователя?

Лот #323 - Каталог для вязки, вышивания и т.п.

Контент: Уникальный (автоперевод) + ручная корректировка "узких" мест

Страниц: 2298 шт.

Вид: HTML + PHP-include на всех страницах для вставки произвольного PHP или HTML кода, например, Sape

Цена: 63 WMZ

Особенности:

- Хлебные крошки

- Галереи на JS + зумер

- Вкладочное размещение информации

- Ниспадающее меню

Всего: 31599