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

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

 
Ответить в данную темуНачать новую тему
> Создание модуля
SiTiS
сообщение 2009-07-27, 8:49
Сообщение #1
Любитель
Иконка группы

Группа: Пользователи
Сообщений: 215
Регистрация: 2008-12-14
Из: Россия, Минусинск

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


Решил адаптировать скрипт для системы и тем самым создать модуль. Но без знаний PHP мне это сложнее в двойне, но сдаваться не хочется, т.к. скрипт почти...готов. Но для модулей системы есть некий шаблон начала. Вот в нем мне и нужна помощь. Начало взял с модуля search:
if (!defined('CMS'))
	 die('Попытка взлома?');
 $Mainclass->LoadLanguage($Mainclass->GetModVal('path'),'gogo','lang-%');
 global $title;
 $Mainclass->Url->params=array('text');
 $Mainclass->Url->Parse();
 $text=isset($_GET['text']) ? $_GET['text'] : '';
 if (empty($text))
	 $text=isset($_POST['text']) ? $_POST['text'] : '';
 if (!empty($text))
	 $title[]=$Mainclass->lang['gogo']['results'].htmlspecialchars($text);
 $title[]=$Mainclass->lang['gogo']['search'];
 $content=$Mainclass->Template->ModuleMenu($Mainclass->GetModVal(&#39;name&#39;),&#39;&#39;,&#39;</code><form method="post" action="&#39;.$Mainclass->Url->Prefix(false,true,true).&#39;">&#39;.$Mainclass->lang[&#39;gogo&#39;][&#39;search:&#39;].Template::Edit(&#39;text&#39;,$text,&#39;size="35"&#39;).&#39; &#39;.Template::Button($Mainclass->lang[&#39;gogo&#39;][&#39;find&#39;]).&#39;</form>&#39;,array(&#39;title&#39;=>$Mainclass->GetModVal(&#39;title&#39;)));
 if (!empty($text))
	 $content.=Search($text);
 Head();
 echo $content;

После обработки остались такие вот строчки:
if (!defined(&#39;CMS&#39;))
	 die(&#39;Попытка взлома?&#39;);
 $Mainclass->LoadLanguage($Mainclass->GetModVal(&#39;path&#39;),&#39;whois&#39;,&#39;lang-%&#39;); /*запрос на языковой файл модуля*/
 global $title;
 $Mainclass->Url->params=array(&#39;text&#39;); /*эту строчку тоже можно удалить?*/
 $title[]=$Mainclass->lang[&#39;whois&#39;][&#39;whois&#39;]; /*здесь все правельно*/
 $content=$Mainclass->Template->ModuleMenu($Mainclass->GetModVal(&#39;name&#39;),&#39;&#39;,&#39;</code><form method="post" action="&#39;.$Mainclass->Url->Prefix(false,true,true).&#39;">&#39;.$Mainclass->lang[&#39;gogo&#39;][&#39;search:&#39;].Template::Edit(&#39;text&#39;,$text,&#39;size="35"&#39;).&#39; &#39;.Template::Button($Mainclass->lang[&#39;gogo&#39;][&#39;find&#39;]).&#39;</form>&#39;,array(&#39;title&#39;=>$Mainclass->GetModVal(&#39;title&#39;)));
 Head();
 echo $content;

Как из строчки $content=$Mainclass... удалить модульное меню? Но чтобы осталось название модуля!? Сделал так:
$content=$Mainclass->GetModVal(&#39;title&#39;);
но название отображается не заглавными буквами, а обычными... Мучил код 2 дня, а воз и ныне там.
P.S. Проверьте пожалуйста код, если я что напутал, мне надо это знать...

Сообщение отредактировал Alexander - 2009-07-27, 9:34
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2009-07-27, 9:36
Сообщение #2
Eleanor developer
Иконка группы

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

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


Цитата (SiTiS @ 27.7.2009, 8:49)
эту строчку тоже можно удалить?

Можно. Смотря что Вы хотите. Для начала, Вы хоть понимаете, что каждая строчка значит?

Цитата (SiTiS @ 27.7.2009, 8:49)
но название отображается не заглавными буквами

$Mainclass->Template->Title(&#39;Заголовок&#39;);
Перейти в начало страницы
+Цитировать сообщение
SiTiS
сообщение 2009-07-27, 9:56
Сообщение #3
Любитель
Иконка группы

Группа: Пользователи
Сообщений: 215
Регистрация: 2008-12-14
Из: Россия, Минусинск

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


Цитата
Можно. Смотря что Вы хотите. Для начала, Вы хоть понимаете, что каждая строчка значит?

Если честно, то нет, именно это я хочу понять, где и что значит каждая строчка. В PHP пока только начинаю вникать, но у нас нет не курсов и даже книжек нет, откуда бы можно было бы узнать этот язык. Поэтому 98% работа мозга...
$Mainclass->Template->Title(&#39;Заголовок&#39;);

Всё хорошо, но а если надо вместо Заголовка вставить название модуля из админки?

И ещё мини вопрос, почему сначала модуль откликается на имя /whois.html, а после выполнения скрипта в строке браузера становится /index.php?module=whois ?
Перейти в начало страницы
+Цитировать сообщение

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

 
RSS Текстовая версия 0.0365 сек.    11 запросов    GZIP включен    Сейчас: 2024-12-02, 17:43