Задать вопрос
@FullTwo

Почему выводит одну запись три раза?

Есть класс для бб кодов , сделал вывод записей в бд 3 записи,но почему то выводит 3 раза последнюю запись
Код
<?
class Modules{
//Отдельный класс для работы нужен для большой настройки и гибкости....
public static function info($text){
/*
Данный тег работает так
{news=maxcount}
maxcount - сколько вывести записей
*/
$text = preg_replace_callback("#\{news=(.+?)}#si", function($news) {
$news = intval($news[1]);
if ($news < 1 || $news > 50) $news = 1;
if(DB::$dbs->querySingle('select count(*) from `news`',0) < 1):
return 'На данный момент не было новостей !';
else:
    $ncode = file_get_contents($_SERVER['DOCUMENT_ROOT'].'/app/'.$_SERVER['HTTP_HOST'].'/modules/news.html'); //Подгружаем шаблон вывода
$ne = DB::$dbs->query("SELECT * FROM `news` ORDER BY `id` DESC LIMIT $news");
while($a =  $ne->fetch(PDO::FETCH_LAZY)) {
    /*Tegi*/
    $one = array();
    $one[0] = '#\{author}#si';
    $one[1] = '#\{time}#si';
    $one[2] = '#\{newstext}#si';
    $two = array();
    $two[0] = $a->us;
    $two[1] = tim($a->time);
    $two[2] = $a->msg;
    /*END*/
$ncode .= preg_replace($one, $two, $ncode);
}
return $ncode;
endif;
 }, $text);


//Выводим все остальное
return $text;
}



}
?>


UPD: Теперь выводит все записи, но с повторениями и с пустым шаблоном
Голова кипит и не получается
  • Вопрос задан
  • 165 просмотров
Подписаться 1 Средний 5 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@FullTwo Автор вопроса
Сам решил , проблема была в подгрузке шаблона )
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽