Форум русской поддержки Joomla!® CMS
09.12.2016, 07:58:56 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Реализовать код PHP в модуле

 (Прочитано 126 раз)
0 Пользователей и 1 Гость смотрят эту тему.
kolhoz
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 141


« : 14.11.2016, 11:31:09 »

Добрый день. Есть код php, который реализует простой словарь. Как можно весь этот код реализовать в виде модуля? Чтобы можно было выводить в любые позиции?

P.S. есть просто как PHP код вставить в модуль через sourcerer и подобные решения не работает. Интересует именно возможность реализации в виде модуля или компонента.

Код:
<?php
//Подключаемся к БД
$link = mysqli_connect('localhost', 'slovar', '123456', 'slovar');
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}

//Записываем в переменную данные введенные в поле word
$form_word=htmlspecialchars(trim($_POST['word']));
//Создаем новый массив
$arrayTanslation = array();
//Проверяем, если переменная form_word не пустая
if ($form_word) {
//Выбираем
$query="SELECT * FROM `ruslak` where `word` ='" . $form_word. "' ";
$query2="SELECT * FROM `lakrus` where `word` ='" . $form_word. "' ";
$sql=mysqli_query($link, $query);
$sql2=mysqli_query($link, $query2);
//Записываем в массив arrayTanslation данные из результат выборки
while($data = mysqli_fetch_assoc($sql)){
array_push($arrayTanslation, $data["translation"]);
}
while($data2 = mysqli_fetch_assoc($sql2)){
array_push($arrayTanslation, $data2["translation"]);
}
mysqli_free_result($data);
mysqli_free_result($data2);
}
?>

<div class="header"></div>

<div class="dictionary_content">
<div class="word">
<span>
<?php
if (empty($form_word)) {
echo "Словарь";
} else if (count($arrayTanslation) == 0) {
echo "Слово не найдено";
} else {
echo $form_word;
}
?>
</span>
</div>

<div class="translation">
<span>
<?php
if (empty($form_word)) {
echo "Словарь";
} else if (count($arrayTanslation) == 0) {
echo "Для слова <span class=\"search_word\">" . $form_word . "</span> отсутствует перевод";
} else {
foreach($arrayTanslation as $value) {
echo "<span class=\"search_success\">Найдено:</span> " . $value . "<br/><br/>";
}
}
?>
</span>
</div>
</div>

<form action="" method="post" autocomplete="off">
<input type="text" name="word" value="" placeholder="Введите слово"/>
<button><img src="img/search.svg" alt="Найти"/></button>
</form>
Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7776



« Ответ #1 : 14.11.2016, 11:41:33 »

создайте свой шаблон в mod_custom, в папке tmpl, например slovar.php. туда вставьте ваш код. а дальше просто добавляйте модуль HTML в нужную позицию, в поле HTML ничего не пишите, а просто выбирайте свой шаблон slovar
Записан
Septdir
Живу я здесь
******

Репутация: +36/-3
Offline Offline

Пол: Мужской
Сообщений: 841


Skype: septdir


« Ответ #2 : 14.11.2016, 13:32:41 »

Я
Добрый день. Есть код php, который реализует простой словарь. Как можно весь этот код реализовать в виде модуля? Чтобы можно было выводить в любые позиции?

P.S. есть просто как PHP код вставить в модуль через sourcerer и подобные решения не работает. Интересует именно возможность реализации в виде модуля или компонента.
Я смотрю у вас тут база да и логика готова, я бы на вашем месте свой модуль написал, это быстро статьи на эту тему есть поищите, фукнции в helper. И да для работы с базой испольте JDatabase
Записан
vipiusss
Профи
********

Репутация: +261/-8
Offline Offline

Пол: Мужской
Сообщений: 4573


Skype: renor_


« Ответ #3 : 14.11.2016, 13:40:19 »

Можно проще, установить https://extensions.joomla.org/extension/custom-html-advanced
Будете код ставить в любом виде.
Записан
kolhoz
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 141


« Ответ #4 : 14.11.2016, 15:18:57 »

Спасибо. Получилось переделав шаблон стандартного модуля HTML.
« Последнее редактирование: 14.11.2016, 15:24:22 от kolhoz » Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7776



« Ответ #5 : 14.11.2016, 15:26:47 »

стандартный шаблон затрется при обновлении. создайте свой.
Записан
vipiusss
Профи
********

Репутация: +261/-8
Offline Offline

Пол: Мужской
Сообщений: 4573


Skype: renor_


« Ответ #6 : 14.11.2016, 15:38:22 »

стандартный шаблон затрется при обновлении. создайте свой.

При установке адвансета-не затрётся. мы про модуль общаемся и его варианты.
При переопределение, Дмитрий, вы правы. Но модуль не затрёт!
Записан
Septdir
Живу я здесь
******

Репутация: +36/-3
Offline Offline

Пол: Мужской
Сообщений: 841


Skype: septdir


« Ответ #7 : 14.11.2016, 17:06:36 »

В данном случае свой модуль лучше, код сичтайте написан, упаковать 5-10 минут + настройки можно настроечек добавить. Лень самим XML писать если сервисы которые это сделают
Записан
vipiusss
Профи
********

Репутация: +261/-8
Offline Offline

Пол: Мужской
Сообщений: 4573


Skype: renor_


« Ответ #8 : 14.11.2016, 23:07:35 »

так модулем поделитесь?
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet