任何人都可以建议我如何在.tpl文件中编写SQL查询吗?
我尝试编写db_query(“select * from table_name”);但它没有用。
请给我一个在tpl文件中编写sql查询的解决方案
答案 0 :(得分:0)
我尝试过以下代码并获取记录
$result = db_query("SELECT * from node");
$records = $result->fetchAll();
print_r($records);
你能检查tpl文件是否正确,或者你可以共享代码。
最好在模块中编写一个函数,并将查询中的数据返回到tpl文件。
// function inside your module
function your_custom_function(){
$result = db_query("SELECT * from node");
$records = $result->fetchAll();
retun $records;
}
然后你可以从tpl文件中调用这个函数
// calling the function from tpl
$data = your_custom_function();
foreach($data as $value){
// do your template logic here
}
答案 1 :(得分:0)
.tpl文件用于模板布局,并且不应该具有比区域具有内容更多的逻辑。对于任何需要更多逻辑的东西,我建议你在template.php中添加一个适用的钩子,或者考虑创建你自己的模块。
您尝试实现的目标是什么,可以通过其他方式解决,而不是使用自定义查询。你可以为你的页面创建一个视图吗?
否则,请尝试首先通过数据库测试您的查询 - 如果您有phpmyadmin或类似的设置,以确定它是否实际返回结果。
有关如何使用该特定功能的更多信息,请参阅https://api.drupal.org/api/drupal/includes!database!database.inc/function/db_query/7。