X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> [php][/php] - покажите пример работы, Свои BB коды
Виктор
сообщение 2010-11-03, 17:24
Сообщение #1
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 105
Регистрация: 2008-12-13

Репутация:   нет  
Всего: нет


Очень порадовало наличие такой функции в редакторе. Например, мне нужно на странице среди прочей информации вывести 5 последних новостей сайта содержащие слово "колбаса", в виде обычного списка. Что я должен [php][/php] какой код я должен вставить?

В описание релиза об этом теге написано очень скупо:
Цитата
[php]...[/php] - все, что находится между этими тегами будет воспринято как PHP код и будет выполнено.
Перейти в начало страницы
+Цитировать сообщение
Skyff
сообщение 2010-11-03, 17:49
Сообщение #2
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 928
Регистрация: 2009-02-08
Из: Литва

Репутация:   нет  
Всего: 4


Виктор, А что тут ещё должны были написать? Может список всех возможных скриптов которые туда можно вставить. :D
Чтоб что то вывести нужен код, для каждой нужды свой код, а пишут код программисты, а программистам кушать хочется :)
Вообще в дальнейшем может между этими тегами можно будет вставлять переменные которые будут что то выводить или что то похожее...
А вообще все скрипты хранятся в файловом архиве, если там нужного нету, нужно заказывать или ждать пока кто то напишет для общего пользования.
Перейти в начало страницы
+Цитировать сообщение
termit
сообщение 2010-11-03, 17:51
Сообщение #3
Опытный
Иконка группы

Группа: Бета-тестеры
Сообщений: 705
Регистрация: 2009-06-02
Из: Житомир

Репутация:   нет  
Всего: 11


А вообще туда можно впихнуть например следующее...

echo 'привет';

В результате получим
Цитата
привет
:sarcastic_hand:
Перейти в начало страницы
+Цитировать сообщение
Виктор
сообщение 2010-11-03, 18:44
Сообщение #4
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 105
Регистрация: 2008-12-13

Репутация:   нет  
Всего: нет


Цитата
echo 'привет';


это все понятно, Вопрос в другом, можно ли работать с Базой данных сайта? Выводить значения и что для этого нужно.
Код писать мне не обязательно, просто конструкцию...

Сообщение отредактировал Виктор - 2010-11-03, 19:13
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2010-11-03, 19:19
Сообщение #5
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Виктор, можно писать любой PHP код.


$Mainclass->Db->Query('');
Перейти в начало страницы
+Цитировать сообщение
Виктор
сообщение 2010-11-03, 19:23
Сообщение #6
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 105
Регистрация: 2008-12-13

Репутация:   нет  
Всего: нет


Спасибо, когда меня примут в группу Eleanor user, сайт в каталоге на модерации, написал сюда support@eleanor-cms.ru, но пока не получил ответа...
Перейти в начало страницы
+Цитировать сообщение
Виктор
сообщение 2011-01-21, 17:11
Сообщение #7
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 105
Регистрация: 2008-12-13

Репутация:   нет  
Всего: нет


Цитата
Виктор, можно писать любой PHP код.

вот например мне на определенной странице модуля FAQ всередине контента нужно вывести последние список последних новостей с этого же сайта, при редактировании этой странице в редактор добавляю следующее:

бла-бла-бла

[php]$old_ending=$Mainclass->Url->ending;
$Mainclass->Url->ending=$ending;
$Mainclass->url_pref=$Mainclass->Url->DynamicBegin().$Mainclass->Url->ConstructUrl(array('module'=>$m_name),false,false).$Mainclass->Url->GetDel();
$Mainclass->Url->ending=$old_ending;

$data=$Mainclass->Cache->Get('archive_'news'_'5,false);
if($data===false)
{
	$data=array();
	$Mainclass->Db->Query('SELECT EXTRACT(YEAR_MONTH FROM `date`) `q`, COUNT(`id`) FROM `f_'.$m_name.'` WHERE `status`=1 GROUP BY `q` ORDER BY `q` DESC LIMIT '.$limit,__file__,__line__);
	while($arr=$Mainclass->Db->Fetch_row())
	$data[$arr[0]]=$arr[1];
	$Mainclass->Cache->Put('archive_'news'_'5,$data,3600,false);
}
$content=array();
foreach($data as $k=>$v)
{
	$k=substr_replace($k,'-',4,0);
	$content[]='<a href="'.$Mainclass->url_pref.$Mainclass->Url->ConstructUrl(array(array('date'=>$k)),false).'">'.Strings::UcFirst(Strings::HumanDate($k)).' ('.$v.')</a>';
}
$content=join('<br />',$content);
[/php]

бла-бла-бла


после сохранения выдает только: бла-бла-бла бла-бла-бла

Как мне правильно написать php код чтобы выводились новости?



Сообщение отредактировал Виктор - 2011-01-21, 17:13
Перейти в начало страницы
+Цитировать сообщение
termit
сообщение 2011-01-21, 17:33
Сообщение #8
Опытный
Иконка группы

Группа: Бета-тестеры
Сообщений: 705
Регистрация: 2009-06-02
Из: Житомир

Репутация:   нет  
Всего: 11


А где
echo $content
?
Код по ходу у тебя работает, вот только вывода нету...

Сообщение отредактировал termit - 2011-01-21, 17:34
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2011-01-21, 17:58
Сообщение #9
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


[b]Виктор[/b], вы же элементарно забыли вывести результат :)
Перейти в начало страницы
+Цитировать сообщение
Виктор
сообщение 2011-01-21, 18:13
Сообщение #10
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 105
Регистрация: 2008-12-13

Репутация:   нет  
Всего: нет


может еще что то забыл, все равно не выводит...

бла-бла-бла

[php noparse]$old_ending=$Mainclass->Url->ending;
$Mainclass->Url->ending=$ending;
$Mainclass->url_pref=$Mainclass->Url->DynamicBegin().$Mainclass->Url->ConstructUrl(array('module'=>$m_nam</span>e),false,false).$Mainclass->Url->GetDel();
$Mainclass->Url->ending=$old_ending;

$data=$Mainclass->Cache->Get('archive_'news'_'5,false);
if($data===false)
{
	$data=array();
	$Mainclass->Db->Query('SELECT EXTRACT(YEAR_MONTH FROM `date`) `q`, COUNT(`id`) FROM `f_'.$m_name.'` WHERE `status`=1 GROUP BY `q` ORDER BY `q` DESC LIMIT '.$limit,__file__,__line__);
	while($arr=$Mainclass->Db->Fetch_row())
	$data[$arr[0]]=$arr[1];
	$Mainclass->Cache->Put('archive_'news'_'5,$data,3600,false);
}
$content=array();
foreach($data as $k=>$v)
{
	$k=substr_replace($k,'-',4,0);
	$content[]='<a href="'.$Mainclass->url_pref.$Mainclass->Url->ConstructUrl(array(array('date'=>$k)),false).'">'.Strings::UcFirst(Strings::HumanDate($k)).' ('.$v.')</a>';
}
$content=join('<br />',$content);
echo $content;
[/php]

бла-бла-бла
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2011-01-21, 18:23
Сообщение #11
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


[b]Виктор[/b], уберите параметр noparse.
Перейти в начало страницы
+Цитировать сообщение
Виктор
сообщение 2011-01-21, 18:31
Сообщение #12
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 105
Регистрация: 2008-12-13

Репутация:   нет  
Всего: нет


этот параметр добавился уже в редакторе форума при переходе в расширенный режим при добавлении на страницу его нет...



бла-бла-бла

[php]$old_ending=$Mainclass->Url->ending;
$Mainclass->Url->ending=$ending;
$Mainclass->url_pref=$Mainclass->Url->DynamicBegin().$Mainclass->Url->ConstructUrl(array('module'=>$m_nam</span>e),false,false).$Mainclass->Url->GetDel();
$Mainclass->Url->ending=$old_ending;

$data=$Mainclass->Cache->Get('archive_'news'_'5,false);
if($data===false)
{
	$data=array();
	$Mainclass->Db->Query('SELECT EXTRACT(YEAR_MONTH FROM `date`) `q`, COUNT(`id`) FROM `f_'.$m_name.'` WHERE `status`=1 GROUP BY `q` ORDER BY `q` DESC LIMIT '.$limit,__file__,__line__);
	while($arr=$Mainclass->Db->Fetch_row())
	$data[$arr[0]]=$arr[1];
	$Mainclass->Cache->Put('archive_'news'_'5,$data,3600,false);
}
$content=array();
foreach($data as $k=>$v)
{
	$k=substr_replace($k,'-',4,0);
	$content[]='<a href="'.$Mainclass->url_pref.$Mainclass->Url->ConstructUrl(array(array('date'=>$k)),false).'">'.Strings::UcFirst(Strings::HumanDate($k)).' ('.$v.')</a>';
}
$content=join('<br />',$content);
echo $content;
[/php]

бла-бла-бла
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2011-01-21, 21:24
Сообщение #13
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


И что, не работает это вариант? О_о
Перейти в начало страницы
+Цитировать сообщение
Виктор
сообщение 2011-02-01, 21:05
Сообщение #14
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 105
Регистрация: 2008-12-13

Репутация:   нет  
Всего: нет


Нашел в чем была ошибка: в настройках был отключен редактор, поставил Eleanor BB-редактор и все стало выводиться

Перейти в начало страницы
+Цитировать сообщение
Jack Boss
сообщение 2011-02-28, 14:55
Сообщение #15
Новичок
Иконка группы

Группа: Eleanor user
Сообщений: 35
Регистрация: 2011-02-06
Из: Київ, Україна

Репутация:   нет  
Всего: нет


Здравствуйте!
Написал такое:
[php]
echo "TEST";
global $Mainclass;
$query = 'SELECT *  FROM `sudoku_teams`';
$Mainclass->Db->Query($query,__file__,__line__);
while($record = $Mainclass->Db->Fetch_row()) 
{
$idTeam = $record['idTeam'];
echo $idTeam;
}
[/php]

В таблице две записи. Ничего не видает. С других таблиц аналогично, даже со стандартних. В чем проблема?
Запись в таблицу работает.
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2011-02-28, 17:56
Сообщение #16
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Jack Boss, Вам нужно почитать специфигацию функции *fetch_row . Вы, наверное, привыкли к тому, что многие в своих разработках под этой функцией подразумевают fetch_array? Используйте Fetch_assoc()
Перейти в начало страницы
+Цитировать сообщение
Jack Boss
сообщение 2011-02-28, 18:19
Сообщение #17
Новичок
Иконка группы

Группа: Eleanor user
Сообщений: 35
Регистрация: 2011-02-06
Из: Київ, Україна

Репутация:   нет  
Всего: нет


Цитата (Alexander @ 2011-02-28, 17:56)
Jack Boss, Вам нужно почитать специфигацию функции *fetch_row . Вы, наверное, привыкли к тому, что многие в своих разработках под этой функцией подразумевают fetch_array? Используйте Fetch_assoc()

Я ни к чему не привык, так как на php не програмировал. Просто смотрел, как у других сделано.
Спасибо ограмное за помощь, все пошло.
Пошел копаться дальше.
Перейти в начало страницы
+Цитировать сообщение

Ответить в данную темуНачать новую тему
0 чел. читают эту тему (гостей: 0, скрытых пользователей: 0)
Пользователей: 0

 
RSS Текстовая версия 0.0426 сек.    11 запросов    GZIP включен    Сейчас: 2021-09-17, 12:42