Перейти к контенту

Вывод случайной фразы


Рекомендуемые сообщения

Значит есть для php-fusion такая штучка, которая выводит случайныю фразу (точнее строку) из текстового документа.

 

<?
openside("Забавные фразы");

$num_of_mes = 1; // количество сообщений на странице
$messages_array = file("http://путь к файлу/texts.dat");
srand ((double) microtime() * 10000000);
$rand_keys = array_rand($messages_array,$num_of_mes);
for($m=0;$m<$num_of_mes;$m++)
{
 if($num_of_mes==1)
 {
echo "<p align=justify>".$messages_array[$rand_keys]."</p>";
 }
 else
 {
echo "<p align=justify>".$messages_array[$rand_keys[$m]]."</p>";
 }
}



closeside();
?>

 

Вопрос: нужно вставить в шаблон инвижна этот (или редактированный код) так чтобы он все же работал...

 

Я так понимаю вот это:

openside("Забавные фразы");
closeside();

Мы попросту убираем за ненадобностью... а куда же добавлять остальное? В index.php? Там вроде никуда не влазит O_o

Ссылка на комментарий
Поделиться на других сайтах

Объяснить более доходчиво не можешь куда и когда должны выводится эти случайные фразы из файла?

И что за код?.. Это можно сделать гораздо легче.

Задача должна быть конкретнее.

Ссылка на комментарий
Поделиться на других сайтах

Конкретнее:

Есть:

1. Есть тесктовый файл со списком фраз.

2. Есть IPB 2.1.6

Нужно:

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

Ссылка на комментарий
Поделиться на других сайтах

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

Я предлагаю, чтобы фразы отображались в постбите там, где отображается время поста, номер поста, IP пользователя и т.д. Тем более, что так мы добьёмся того, что в каждом посте будет новая, случайным образом выбранная, фраза.

И так. Открываем файл ./cache/skin_cache/cacheid_2/skin_topic.php и находим там следующую строчку

function RenderRow($post="",$author="") {

Ниже добавляем

$f = fopen ("./file.txt", "r");
$file = file("./file.txt");
$randomize = rand(0,(sizeof($file))-1);
while ($line = fgets($f) AND $p != $randomize)
{
$p++;
}

Далее находим строчку

<a href="#" title="{$this->ipsclass->lang['click_for_mod']}" onclick="topic_toggle_pid('{$post['pid']}'); return false;">{$post['pid_start_image']}</a>

И добавляем ниже

<br />$line

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

Ссылка на комментарий
Поделиться на других сайтах

[zi]

 

Внизу страницы форума есть строка

 

Хостинг для сайтов, бесплатный домен за оплату от 6 мес. Rusonyx.

 

Я лично хочу.

Чтоб примерно в том месте отображалась случайная фраза.

Из какого-то списка.

Ссылка на комментарий
Поделиться на других сайтах

Хм.. Мда, тогда это будет чуть-чуть по сложнее ввиду некоторых нюансов.. но разве нас с Вами это остановит? =) Конечно же нет.

Открываем файл ./sources/classes/class_display.php и там находим строчку

$this->ipsclass->skin['_wrapper'] = str_replace( "<% CSS %>"			, $css								, $this->ipsclass->skin['_wrapper']);

Перед ней вставляем уже выше указанный код выбора случайной строчки из файла

$f = fopen ("./file.txt", "r");
$file = file("./file.txt");
$randomize = rand(0,(sizeof($file))-1);
while ($line = fgets($f) AND $p != $randomize)
{
$p++;
}

Далее ищем строчку

$this->ipsclass->skin['_wrapper'] = str_replace( "<% CHARSET %>"		, $this->ipsclass->vars['gb_char_set'], $this->ipsclass->skin['_wrapper']);

И вставляем ниже

$this->ipsclass->skin['_wrapper'] = str_replace( "<% FRAZI %>"		, $line, $this->ipsclass->skin['_wrapper']);

Теперь идем в AdminCP -> Skins & Templates -> Skin Manager -> IPB Default Skin -> Edit Root Skin Board Header & Footer Wrapper и там ищем

<% COPYRIGHT %>

Ниже вставляем

<div align="center"><% FRAZI %>

Вот и всё. Теперь внизу Форума на всех страницах, сразу после копирайта будет отображаться наша, случайно выбранная из файла, фраза. Как видите, я выровнял её по центру, но Вы можете сами как угодно её выделить, опустить ещё ниже или нет.. короче говоря, теперь делайте, как Вам будет удобнее, главное знать основы HTML =)

И опять же, если бы Вы сразу сказали где Вы хотите видеть эти фразы, случайно выбранные из файла, мне не пришлось бы отвечать два раза в разных постах.. подумайте об этом. Нужно сразу всё разъяснять.

Ссылка на комментарий
Поделиться на других сайтах

Без понятия почему, НО! Вариант вывода #1 работает только для администратора! Т.е. забегаю я под обычным юзверем или просто гостем, а тут на тебе! Нету фраз ;)

Вариант #2 работает на ура :D

Выполнил сл. образом:

На главную > Управление стилями > Управление шаблоном "***">skin_global (Основные HTML фрагменты)>global_board_footer>

 

Опускаемся в самый конец страницы и:

<br><table bgcolor="#49525D" valign="top" width="100%" border="0" >
<tr><td><font text color="#B9B9B9"><center>.::Глупость страницы::.<br><% FRAZI %></center></font></td></tr></table>

 

!Делать нужно для каждого стиля!

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.