Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Выбор случайного абзаца

13K
31 октября 2005 года
z666lo
5 / / 31.10.2005
привет

есь такая задача:

есть главная страница, к примеру, index.htm
есть страничка, где размещены абзацы с инфой.

фишка в том, чтобы при каждом посещении страницы (ну или же ее обновлении) - показывался только один абзац, причем каждый раз разный, как понимаецца.

например, файл, содержащий те самые абзацы:

...


бла бла


ух ух


ну ты блин
...

так понимаю, что надо присваивать им имена (циферки, видимо) и каким-то образом играть с функцией rand, что будет прописано на index.htm , так?

вот только как это это сделать практически - не знаю, опыта нету нифига.
приведите пример, плиз, как это можно сделать.
спасибо.
11K
31 октября 2005 года
Аntоn
26 / / 27.10.2005
Цитата:
Originally posted by z666lo
привет

есь такая задача:

есть главная страница, к примеру, index.htm
есть страничка, где размещены абзацы с инфой.

фишка в том, чтобы при каждом посещении страницы (ну или же ее обновлении) - показывался только один абзац, причем каждый раз разный, как понимаецца.

например, файл, содержащий те самые абзацы:

...


бла бла


ух ух


ну ты блин
...

так понимаю, что надо присваивать им имена (циферки, видимо) и каким-то образом играть с функцией rand, что будет прописано на index.htm , так?

вот только как это это сделать практически - не знаю, опыта нету нифига.
приведите пример, плиз, как это можно сделать.
спасибо.


Можно сделать следующим образом:
Прочитать файл в массив
$file_array = file('your_file.txt');
При этом в качестве елементов массива будут выступать строки файла.
Выбрать из этого массива случайный ключ
$rand_key= array_rand($file_array, 1);
Вывести cоответствующее значение на первую страницу
print($file_array[$rand_key]);
Главное, чтобы в файле одно высказывание соответствовало одной строке.

13K
31 октября 2005 года
z666lo
5 / / 31.10.2005
Цитата:
Originally posted by Аntоn
Можно сделать следующим образом:
........




блин. не получается...

а примеры иных способов?

239
31 октября 2005 года
Dolonet
1.7K / / 20.05.2000
Цитата:
Originally posted by z666lo
блин. не получается...

а примеры иных способов?

А что не получается?

13K
31 октября 2005 года
z666lo
5 / / 31.10.2005
Цитата:
Originally posted by Dolonet
А что не получается?



ну вот тут ты в точку.
программированием я не занимался не разу (девственник так сказать :D )

посему поместив вышепредложенный вариант в пхп страницу получил вот это:

Warning: file() [function.file]: Unable to access sayingstxt in
....../TEST/tst.php on line 80

Warning: file(sayingstxt) [function.file]: failed to open stream: No such file or directory in
......./TEST/tst.php on line 80

Warning: array_rand() [function.array-rand]: First argument has to be an array
......./TEST/tst.php on line 82

239
31 октября 2005 года
Dolonet
1.7K / / 20.05.2000
Продемонстрируйте, пожалуйста, тут (желательно в bb-теге "PHP") свой код.
13K
31 октября 2005 года
z666lo
5 / / 31.10.2005
Цитата:
Originally posted by Dolonet
Продемонстрируйте, пожалуйста, тут (желательно в bb-теге "PHP") свой код.



там в основном html
ну вопрос-то тут:

<td>


ах ты ух ты
<?
$file_array = file(sayings.txt);
$rand_key= array_rand($file_array, 1);
print($file_array[$rand_key]);
?>
</td>

13K
31 октября 2005 года
z666lo
5 / / 31.10.2005
все, заработало

не поставил ' ' - вот эти знаки в имени файла

ок
239
31 октября 2005 года
Dolonet
1.7K / / 20.05.2000
Цитата:
Originally posted by z666lo
все, заработало

не поставил ' ' - вот эти знаки в имени файла

ок

Рад, что все заработало :)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог