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中返回数据库值
基础教程推荐
猜你喜欢
- Libpuzzle 索引数百万张图片? 2022-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- 在多维数组中查找最大值 2021-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01