Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как обойтись без запроса в бд?

Как обойтись без запроса в бд?


     16.07.2014    модуль, include    Общие вопросы по PHP, Модули, MySQL    2854

вопрос
Всем привет.
Пишу модуль, и подключаю его так {include file="engine/modules/mymod.php"} в main.tpl
Так вот, модуль работает только при просмотре полной новости. И в нем я использую запрос в бд чтоб достать нужную мне инфу по id етой полной новости.
Вопрос: почему в mymod.php нельзя сразу использовать переменную например $row['category']? Он ее не видит.
Поетому я должен делать запрос $sql = "SELECT category FROM " . PREFIX . "_post WHERE id='".$id."'";
Выходит {include file="engine/modules/mymod.php"} обрабатываеться раньше show.full.php

Ответа пока нет


6 комментариев

rocksmart
Юзер

rocksmart - 16 июля 2014 17:00 -

Используй глобальную $category_id

lutskboy
Эксперт

lutskboy - 16 июля 2014 17:06 -

Ето я $row['category'] как пример привел. На самом деле мне нужно $row['field'] где field мое поле в таблице dle_post

golden_eagle_god
Юзер

golden_eagle_god - 16 июля 2014 17:10 -

Советую вам инклудить модуль в init.php
Например вот так:


if($dle_module=="showfull"){
include_once ENGINE_DIR . '/modules/mymod.php';
}


А в модуле, выведите результат работы так:
//Работает скрипт
$tpl->set( '{result}', $result);


Затем с помощью {result} в main будет результат работы.

lutskboy
Эксперт

lutskboy - 16 июля 2014 17:16 -

Наверно так и сделаю. Спасибо за подсказку

golden_eagle_god
Юзер

golden_eagle_god - 16 июля 2014 17:48 -

Всегда пожалуйста smile

rocksmart
Юзер

rocksmart - 16 июля 2014 17:39 -

Можно так

/engine/classes/templates.class.php
function load_file( $matches=array() ) {
global $db, $is_logged, $member_id, $cat_info, $config, $user_group, $category_id, $_TIME, $lang, $smartphone_detected, $dle_module,$row;

mymod.php для проверки в полной новости

<?php


echo'<pre>';print_r($row);echo'</pre>';

?>

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх