Я создал функцию для запуска SQL-запроса, выводя данные, и это кажется прекрасным. Проблема в том, что я ничего не могу с этим сделать, поскольку я не могу сделать выход к шаблонам работает.Невозможно создать функцию TPL из PHP-кода с помощью Smarty
PHP код:
function getCategories() {
try {
foreach($this->pdo->query("SELECT categories.cat_id, categories.cat_name, categories.cat_description FROM categories") as $row) {
$rows[] = $row;
}
} catch(PDOException $e) {
print "Error!:" . $e->getMessage();
return false;
}
return $rows;
$smarty = new Smarty();
$smarty->assign('categories', $rows);
}
который просто возвращает это:
Замена return $rows;
с return $smarty->assign('categories', $rows);
просто делает пустую страницу.
Я использую это в шаблоне: {$categories.cat_name}
Может кто-нибудь помочь мне исправить это?
Я пытаюсь переписать уязвимый скриптовый сценарий форума с помощью Smarty, поэтому он стоит использовать для разработки сценария. Это буквально только категории, темы и система входа/регистрации atm, которые я пытаюсь переписать с помощью Smarty.
Можете ли вы показать нам html, где вы хотите использовать категории? –
HTML не имеет никакого отношения к этому вопросу, потому что Smarty должен объявить переменную для этого, чтобы даже работать ... Предполагается использовать «$ smarty-> assign (« categories », $ rows); для назначения $ категорий. переменную, а затем добавить остальные после (точки), чтобы Smarty извлекал информацию из этой строки. Smarty делает это иначе, чем сам PHP. Php является единственным подходящим для этого вопросом. – alex809