我正在尝试在php上创建的smarty模板上打印一个数组。我收到了这个错误:
注意:第87行的C:\ wamp \ www \ smarty \ templates_c \ e43b807af9cc8df7d350c3baf9e47f167c9520a0.file.index.tpl.php中的数组到字符串转换
我无法想象如何解决它。你能告诉我错误在哪里吗?
这是我在php中创建数组的部分
function get_db_results()
{
$mysql = "SELECT COUNT(*) FROM question";
$myresult = mysql_query($mysql);
$myr = mysql_fetch_row($myresult);
SmartyPaginate::setTotal($myr[0]);
$index = SmartyPaginate::getCurrentIndex();
$limit =SmartyPaginate::getLimit();
$rsql = "SELECT question_title FROM question ORDER BY question_id DESC LIMIT $index, $limit ";
$rresult = mysql_query($rsql);
//$column = array();
while($rrow = mysql_fetch_array($rresult , MYSQL_ASSOC))
{
$column[]=$rrow;
}
return $column;
}
$smarty->assign('results', get_db_results());
这是聪明的部分:
{section name=res loop=$results}
{$results[res]}
{/section}
答案 0 :(得分:2)
将{$results[res]}
更改为{$results.res}
假设您的数组中有“res”键
通过查看你的功能我想它应该是:
{$results.question_title}
以下是解决方案:
{foreach from=$results item=results name=results}
{$results.question_title}
{/foreach}
答案 1 :(得分:2)
首先删除来自C:\wamp\www\smarty\templates_c\
的所有缓存文件,之后尝试{$results[res].YOUR FIELD NAME}
,因为您使用了{section}{/section}
。
例如 {$results[res].question_title}