Здравствуйте, должен выводиться контент из базы через loadtpl, но почему-то не работает, вот собственно сам код: Код (Text): if (!empty($_GET['page'])) { $page = $link->prepare("SELECT * FROM `AD_PAGES` WHERE `name` = ? LIMIT 1"); if (!$page->execute([ $_GET['page'] ])) { MessageSend(1, 'MySQL Error!', ''); } if ($page->rowCount() <= 0) { MessageSend(1, 'Page not founded!', ''); } $page = $page->fetch(); if ($page['adv'] === 0) { $advert = ''; } $goods = loadTpl('/page.html', $page); И код page.html: Код (Text): </div> <div class="row"> <div class="col-md-8 col-md-offset-2"> <div class="panel panel-default"> <div class="panel-heading"> <h3 class="panel-title text-center"><i class="icon file"></i> <?php echo $data['title']; ?></h3> </div> <div class="panel-body"><?php echo $data['text']; ?></div> </div> <a class="btn btn-success btn-block" href=""><i class="icon chevron-left"></i> Вернуться на главную страницу</a> </div>
1. Перед выводом в loadtpl сделайте print_r($page) данные есть? 2) ну и саму функцию liadtpl неплохо бы увидеть.... Или думаете тут все телепаты?
Код (Text): function loadTpl($file, $data = []) { global $config; $file = STYLE_DIR . $file; ob_start(); if (file_exists($file)) { include $file; } else { echo 'TPL File not found!'; } return ob_get_clean(); } --- Добавлено --- После print_r выводит: Код (Text): Array ( [id] => 3 [name] => 2 [title] => rules [text] => afdspgksdgkoasgasd [adv] => 1 ) + выводит криво поверх шапки сайта
@Fyntik, что дальше происходит с переменной $goods? Спойлер именно в ней теперь находится результат работы loadTpl()
То есть, затираете результат работы функции loadTpl(). А дальше? --- Добавлено --- Спойлер Просто интересно, была ли попытка вывести результат, хоть и пустой
В общем, если ещё что-то не понятно - поставьте в 19-й строке (в коде из 1-го сообщения): PHP: echo $goods; А перезапись результата работы функции loadTpl() /* $goods = ob_get_clean(); */, однако, можно убрать. Если этот оператор находится не в другом логическом блоке