[DLE] Отобразить переменную модуля в шаблоне

Тема в разделе "Скины", создана пользователем sidor, 5 мар 2009.

Статус темы:
Закрыта.
  1. sidor

    sidor

    Регистр.:
    7 июн 2006
    Сообщения:
    220
    Симпатии:
    14
    Версия DLE: 7.5
    NULL: мид-тим

    Есть выпадающее меню и таблица со значениями готовыми для нее.
    Решил сделать меню в виде модуля.
    И вот появилась проблема: при вытаскивании информации с базы, не могу поместить информацию в область шаблона - вылазит за его границы и все тут :(
    Вот что получается:
    [​IMG]

    Вот часть кода модуля:
    PHP:
    $horis_menu .=<<<HTML
              <ul id="nav" class="nav3">



        <li class="dir"><a href="#">О компании</a>

            <ul>
    HTML;
    $result mysql_query("SELECT title,menu_title FROM dle_links WHERE title='О компании'");
    $myrow mysql_fetch_array($result);
    do {
            echo 
    "<li><a href='#'>$myrow[menu_title]</a></li>";
        }
        while(
    $myrow mysql_fetch_array($result));
    <<<HTML
            </ul>

        </li>

        <li class="dir"><a href="#">О продукции</a>

            <ul>

                <li><a href="#">Весь ассортимент, краткое описание</a></li>


            </ul>

        </li>

        <li class="dir"><a href="#">Новости</a>

            <ul>
    вопрос: как мне поместить переменную $myrow[menu_title] в пределы шаблона без задействия tpl-файла? я немного не понял систему работы модуля и ним и по-этому не хочу пока что заморачиваться. помогите пожалуйста.

    такая конструкция как
    <<<HTML
    <? ?>
    HTML;
    не покатит?
     
  2. Bobrov

    Bobrov Постоялец

    Регистр.:
    7 авг 2008
    Сообщения:
    145
    Симпатии:
    13
    Ты все правильно сделал, проблема в классах, меняй свой стиль, то бишь padding в css
     
  3. sidor

    sidor

    Регистр.:
    7 июн 2006
    Сообщения:
    220
    Симпатии:
    14
    да ну нет. в статическом виде все отлично работает. проблема именно с выводом из базы.

    p.s. не пойму почему тему переместили. я не тему ищу, а прошу помочь с php в dle
     
  4. FORMAT

    FORMAT

    Регистр.:
    9 май 2008
    Сообщения:
    210
    Симпатии:
    45
  5. johny

    johny Создатель

    Регистр.:
    9 апр 2007
    Сообщения:
    34
    Симпатии:
    8
    вся проблема в строке
    PHP:
            echo "<li><a href='#'>$myrow[menu_title]</a></li>";
    при подключении этого файла сразу выполняется команда echo, а после него генерируются/выводятся шаблоны. думаю идею понял, пытался как можно проще :)

    Добавлено через 6 минут
    Должно получиться что-то вроде этого:

    PHP:
    $myrow mysql_fetch_array($result);
    do {
            
    $tpl->set('{menu_titile}''<li><a href="#">'.$myrow[menu_title].'</a></li>'); //создаем переменную {menu_titile} и в нее записываем пункты менюшки
        
    }
        while(
    $myrow mysql_fetch_array($result));
    Потом в шаблоне твоего модуля использую в нужном месте:
    PHP:
    {menu_titile}
     
Статус темы:
Закрыта.