Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы Цикл всего шаблона???

Цикл всего шаблона???


     30.04.2014    Общие вопросы    1369

вопрос
Привет друзья. Есть код:

Ответил: Sander


<?php
/*
=====================================================
Модуль как попало создал: ONE and Twelvee
=====================================================
Файл: teamsd2t.php
=====================================================
Данный код не защищен авторскими правами
=====================================================
*/

if(!defined('DATALIFEENGINE')) die("Hacking attempt!"); // чтоб нИкто не позарился... !!! как можно нИкто писать через Е ??
include ('engine/api/api.class.php');
if (!$teamsd2t) {
    $sql = $db->query( "SELECT * FROM " . PREFIX . "_teams ORDER BY id");
    $list = "";
    while($row = $db->get_row($sql)){
        $list .=<<<HTML
    <tr>
        <td>{$row['teamname']}</td>
        <td>{$row['win']}</td>
        <td>{$row['newin']}</td>
        <td>{$row['sovsemnewin']}</td>
    </tr>
HTML;
    }
    if(!$list) $list = "<tr><td colspan='4'><center>Записей не обнаружено</center></td></tr>";
    $tpl->load_Template( "teamlist.tpl" );
    $tpl->set('{list}', $list);
    $tpl->compile('content');
    $tpl->clear();
}

?>


<table class="table table-hover" style="width:100%;">
<thead>
<tr>
    <td style="background-color:#fd7c7c;width:600px;">Название тимы</td>
        <td style="background-color:#a77cfd;">Побед</td>
        <td style="background-color:#7ce9fd;">Ничьих</td>
        <td style="background-color:#fdda7c;">Поражений</td>
  </tr>
</thead>
<tbody>{list}</tbody>
</table>

Комментарии пользователей (10)

ПафНутиЙ
1065

3395 | 2433

ПафНутиЙ - 30 апреля 2014 21:33 - Админ

Попробуйте делать модуль по этой инструкции
да и API class вам не нужен, если подключаете модуль через include

Каков вопрос - таков и ответ. Просто помните об этом.

Twelvee
15

124 | 25

Twelvee - 1 мая 2014 08:59 - Юзер

Нет, модуль подключаю не через include. В Вашей инструкции описывается именно модуль-блок.
Мне все же хотелось узнать) Где же ошибочка то?) Вроде не циклю весь шаблон, а он циклится...

ПафНутиЙ
1065

3395 | 2433

ПафНутиЙ - 1 мая 2014 09:17 - Админ

if(!defined('DATALIFEENGINE')) { die("Hacking attempt!"); } // чтоб некто не позарился...
include ('engine/api/api.class.php');
if (!$teamsd2t) {
    $tpl->load_template( "teamlist.tpl" );
    $sql = $db->super_query( "SELECT * FROM " . PREFIX . "_teams ORDER BY id", true);
    if ($sql) {
        foreach ($sql as $item) {
           $tpl->set('{teamname}', $row['teamname']);
                $tpl->set('{win}', $row['win']);
           $tpl->set('{newin}', $row['newin']);
           $tpl->set('{sovsemnewin}', $row['sovsemnewin']);
           $tpl->compile('content');        
        }
    } else {
        echo 'ОШИБКААА';
    }
    $tpl->clear();
}


а так?

Каков вопрос - таков и ответ. Просто помните об этом.

Twelvee
15

124 | 25

Twelvee - 1 мая 2014 09:37 - Юзер


Как то так получилось, разницы нет впринципе.
Еще код изменил чутка, т.к. foreach

Sander
1125

1637 | 1204

Sander - 1 мая 2014 11:44 - Эксперт


На лицо полное непонимание принципов работы с шаблоном.
Вот скажите мне, откуда скрипт узнает, что в цикле надо брать только кусок шаблона (обведен рамкой)?
Вы же подключаете весь шаблон, всю таблицу. Вот она и дублируется с каждым циклом.

SanDev.pro - мой блог.

ICQ: 404-037-556
Skype: Sander8804

Twelvee
15

124 | 25

Twelvee - 1 мая 2014 11:55 - Юзер

Это мой первый скрипт на dle. Именно для этого я и обращаюсь к Вам! Sander, Подскажите, что необходимо изменить?

Twelvee
15

124 | 25

Twelvee - 1 мая 2014 15:54 - Юзер

Тему клоз. Разобрался

locksmith
24

locksmith - 13 октября 2014 20:09 - Юзер

У меня откзывается работать если я прописываю переменной <<<HTML - а если просто в кавычках все проставляю то работает. Что я делаю не так?

locksmith
24

locksmith - 14 октября 2014 04:27 - Юзер

Пишет синтактическую ошибку после строки HTML;

locksmith
24

locksmith - 14 октября 2014 04:41 - Юзер

Разобрался!!! HTML; должен быть в начале строки. без пробелов и табуляции

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

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