‹
| КрасносельскийКонстантинКонстантинович |
ТаблицейБлоками.Приложение Д: javascript число, Псевдослучайные случайные элементы PHP |
Последняя модификация: 10.08.2014 г
Страница загружена с адреса: http://webdesign.site3k.ru/conjuncture/append/d/random.html
Иногда может потребоваться включать в страницы один или несколько элементов из некоего набора элементов, так, чтобы они, по возможности не повторялись и, на достаточно большом количестве страниц были представлены все. Это может понадобиться для вывода на страницу каких-нибудь девизов или анекдотов, из заранее подготовленного списка, или рекламы товаров и услуг. Часто это применяется для прокрутки баннеров (возможность устроить собственную баннерную сеть).
С применением JavaScript, в том месте страницы, где должен произойти вывод, можно вставить следующий код:
<SCRIPT LANGUAGE="JavaScript" src="baners.js"></SCRIPT>
Остальное будет находиться в отдельном файле «baners.js», который будет загружаться только с первой страницей и, в дальнейшем, выполнятся прямо из кэша на компьютере посетителя, уменьшая, тем самым, трафик и время загрузки остальных страниц. Кроме того, при необходимости откорректировать код, корректировать придется только один файл «baners.js», а не все файлы, в которых должен отобразиться результат.
Код файла baners.js основан на генерации случайного числа. Некоторые дизайнеры используют для этого конструкцию типа:
var j=(new Date()).getSeconds() % 3;
Довольно странный способ получить случайное число.
Другие используют округление случайного числа, умноженного на 10 в какой-нибудь степени:
rndnum = Math.round(Math.random() * 10000);
Однако, есть способ получше:
Math.floor(Math.random()*n) где n - верхняя граница диапазона (случайное число от 0 до n, НЕ включая n).
Приведу пример баннерокрутилки:
Этот код легко адаптировать под любое количество баннеров. Легко адаптировать под другие задачи. При любом способе применения, скрипт даст положительный эффект, ведь даже на одной и той же странице, при каждой ее перезагрузке, постоянно будет что-то новенькое. Так можно внести разнообразие даже в статический материал.
Для примера ниже продемонстрирован вывод "Советов дня" по одному из 4-х заранее заготовленных советов. Кнопка "Обновить" позволит просмотреть другие советы (если на вашей странице нужно листать советы, то лучше добавить кнопку, которая заново вызовет только сам скрипт советов).
В некоторых ситуациях лучше применить не скрипт, обрабатываемый браузером, а скрипт, обрабатываемый сервером. Таким скриптом может быть, скрипт на PHP, включенный в страницу инструкцией
<!--#include virtual="/_rand.php" -->
Не буду изобретать велосипед, а продемонстрирую готовый, недавно написанный скрипт.
Задача скрипта заключается в выведении 6 случайных строк. Вот содержимое файла _rand.php.
Затрудняюсь сказать, какой код проще и надежней. Выбор между JavaScript и PHP в данном случае, скорее, зависит от личных предпочтений.
