Kamrad.ru

Kamrad.ru (https://kamrad.ru/index.php)
-   Веб-дизайн, вёрстка и веб-программирование (https://kamrad.ru/forumdisplay.php?f=87)
-   -   Авторазмещение фраз на сайте (https://kamrad.ru/showthread.php?t=40124)

Ланиста 07-09-2002 14:16

Авторазмещение фраз на сайте
 
Привет, камрады!
У меня такой вопрос. Есть множество фраз, которые я хотел бы по порядку (или рандомно) размещать в виде изречений на сайте следующим образом: один день - одна фраза. Как мне это делать автоматически?
При этом я смыслю в HTML (чистом), но абсолютно ничего не знаю про решение этой задачи. Возможно, есть какие-то примеры в сети - дайте ссылочку. Или сами расскажите, - я понятливый :)
Заранее спасибо!

Dark 08-09-2002 04:04

В принципе такое можно организовать и на Java Script. Теоретически это довольно просто: создаётся массив с фразами, а потом через генератор случайных чисел вся эта лабуда выводится. :) Но я JS не знаю, поэтому код пусть другие пишут. :gigi:

Ланиста 08-09-2002 16:50

Dark
Вот-вот! Именно так я и думал :) Спасибо...

Другие, где вы? Помогите, пожалуйста!

COBET 08-09-2002 19:16

Ланиста
если есть хостинг с поддержкой php можно вытворить следущее (правда подправить чуть надо, чтоб именно раз в день):
(все эта кака вставляется в хтмл-код)
<?

$numms = file(«001.txt»);
// открываем файл с фразами
srand ((double) microtime() * 1000000);
$rand_keys = array_rand ($numms, 3);


?>

Ланиста 08-09-2002 20:15

COBET
Огромное спасибо, завтра проверю, но перед этим пойдут вопросы :)
numms = file(«001.txt»); - понятно

srand ((double) microtime() * 1000000); - это, наверное, частота выборки фраз... А что значит double, и 1000000 - это миллисекунд? И в microtime() в скобках что за параметр?

$rand_keys = array_rand ($numms, 3); - это рандомный выбор из файла, а что значит "3"?

А если нужен не случайный выбор, а по порядку, что делать?
А Narod от Яндекса поддерживает php?

СОВЕТу будет нелегко ответить на все вопросы, поэтому приветствую помощь других знатоков :)

COBET 08-09-2002 20:25

это, наверное, частота выборки фраз... А что значит double, и 1000000 - это миллисекунд? И в microtime() в скобках что за параметр?
Это обнуление генератора случайных чисел. Чисто системная команда.
а что значит "3"?
А ну енто у меня стоит три - т.к. места для случайных фраз у меня три, соответственно это строка отвечает за неповторяющиеся фразы.
А если нужен не случайный выбор, а по порядку, что делать?
Э...ы... ну надо бы цикл вставить плюс проверка числа, что-то типа i=i+1
А Narod от Яндекса поддерживает php?
Неа, Народ сосет и скорость никакая.

Ланиста 08-09-2002 20:36

COBET
Так что такое double?
Насчет цикла - можно подробнее, пожалуйста, -записываю.

А где бесплатно можно найти хостинг с php?

COBET 08-09-2002 20:52

Так что такое double?
Фиг знает, говорю же, системная функция, править ее не к чему (имхо)
Насчет цикла - можно подробнее, пожалуйста, -записываю.
могу сказать лишь алгоритм: каждый день переменная увеличивается на еденицу, т.е. переходит на следущую фразу. Как это реализовать - не ко мне, к более опытным кодерам ;). Или faq какой почитать...

COBET 08-09-2002 20:54

вот, блин, только что у себя проверил - глючит по-страшному. Блиииин.

Dark 09-09-2002 05:57

Ну... Если учесть, что предполагается использовать большое число фраз (ближе к сотне), то действительно лучше взяться за PHP.

Создаётся файл (например file.txt). В каждую строчку этого файла вгоняется по изречению. Далее:

случайный выбор
PHP Code:

<?
$file 
"file.txt";
$read file($file);
shuffle($read);
print 
$read[0];
?>

Shuffle() - сортирует массив в случайном порядке, поэтому в коде вместо ноля можно встявлять любое число в пределах размера массива.

>> А если нужен не случайный выбор, а по порядку, что делать?
-- По порядку чего? Захода пользователей? Для каждого пользователя по порядку? Независимо от пользователя для каждого захода по порядку? Может как-то ещё?..

>> А где бесплатно можно найти хостинг с php?
-- Воспользуйся любым поисковиком: хостингов найдёшь достаточно.

Ланиста 09-09-2002 16:49

COBET
Спасибо. Постараюсь избежать глюков. :)

Dark
Буду пробовать. Благодарю.

Единственное, что я понял - нужно заняться php самому, чтобы слабать что-нибудь достойное :)
Всем спасибо.

COBET 09-09-2002 17:23

Ланиста
а у меня тоже заработало, хех :)


All times are GMT +3. The time now is 09:30.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Любое использование материалов сайта
возможно только с разрешения его администрации.