Returning database value in Smarty(在Smarty中返回数据库值)
本文介绍了在Smarty中返回数据库值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有此Smarty代码来获取数据:
$sel=mysql_query("select id, name from form");
$smarty->assign('contact', mysql_fetch_row($sel));
$smarty->display('testfunction.tpl');
我的模板文件:
<ul>
{foreach from=$contact item=foo}
<li>{$foo}</li>
{/foreach}
</ul>
此输出:
1
a
但我希望输出如下:
1:a
2:b
推荐答案
如果您使用mysql_fetch_row
,它会完全按照它所说的做--它取出一行,但不会超过一行。我猜您的结果集是这样的(如果我错了,请在您的问题中澄清):
id | name
----+------------
1 | a
2 | b
解决此问题的一种方法是构建一个数组,然后可以使用Smarty拆分该数组,如下所示:
/* PHP code */
$your_array = array();
$sel=mysql_query("select id, name from form");
while($row=mysql_fetch_array($sel)) {
$your_array[] = $row;
}
$smarty->assign('contact', $your_array);
$smarty->display('testfunction.tpl');
现在您在Smarty中有一个数组,基本上如下所示:
[1] => (
[0] => 1,
[1] => a
),
[2] => (
[0] => 2,
[1] => b
)
可以按照您所描述的方式显示:
{* Smarty Code *}
<ul>
{foreach from=$contact item=foo}
<li>{$foo[0]}: {$foo[1]}</li>
{/foreach}
</ul>
我还没有试过,但它应该能胜任这项工作。如果不正确,请在模板中使用{debug}
以查看数组$contact
是如何形成的。
另一个建议:
您在这里使用的PHPS MySQL连接器已弃用。强烈反对使用此扩展。而应使用MySQLi或PDO_MySQL扩展名。这篇关于在Smarty中返回数据库值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:在Smarty中返回数据库值


基础教程推荐
猜你喜欢
- php中的PDF导出 2022-01-01
- 主题化 Drupal 7 的 Ubercart “/cart"页 2021-01-01
- Yii2 - 在运行时设置邮件传输参数 2022-01-01
- PHPUnit 的 Selenium 2 文档到底在哪里? 2022-01-01
- php 7.4 在写入变量中的 Twig 问题 2022-01-01
- 使用 scandir() 在目录中查找文件夹 (PHP) 2022-01-01
- php中的foreach复选框POST 2021-01-01
- Web 服务器如何处理请求? 2021-01-01
- 如何在数学上评估像“2-1"这样的字符串?产生“1"? 2022-01-01
- 将变量从树枝传递给 js 2022-01-01