首页 > 解决方案 > Smarty 模板引擎从数据库中获取单行并使用字段

问题描述

我是smarty的新手,遇到了一个问题。根据他们的手册,如果我从数据库中获取数据并希望在循环中显示它,那么我可以轻松使用 foreach 函数,但在这里我想传输单行的值并使用 if else 在 tpl 页面上使用它们。如何在不使用 foreach 单行的情况下传输值并使用它们?

我的服务器端代码

$verify = $pdo->prepare("SELECT ver_code, ver_validity FROM verification WHERE ver_user = :user");
$verify-> bindValue(':user', $_GET['user']);
$verify-> execute();
//   $vf = $verify->fetch();
//   $code = $vf['ver_code'];
//   $expiry = $vf['ver_validity'];

$smarty->assign('verify', $vf);

$smarty->display('reset.tpl');

我想将来自数据库的值发送到演示代码并使用 if else 语句使用它们。请帮我解决这个问题。

标签: phpsmartytemplate-enginesmarty3smarty2

解决方案


获取一行:

$vf = $verify->fetch();

将其分配给 Smarty 变量:

$smarty->assign('verify', $vf);

在 Smarty 模板中使用它,例如:

{$verify.ver_code}
{$verify.ver_validity}

在 if 语句中:

{if $verify.ver_code eq "abcdefg"}

希望这可以帮助。


推荐阅读