将php文件数据显示到.tpl(Smarty)

时间:2012-10-30 05:13:20

标签: php smarty

我有demo.php文件,在那里我创建了一个从数据库中获取数据的函数:

例如:

function display() {
    $sql = "SELECT * FROM user WHERE id=" . $_POST['id'];
    $r=mysql_query($sql);
    $row=mysql_fetch_row($r);
}

现在,我有user.tpl个文件,我想将来自上面显示功能的$row数据显示到该.tpl文件中。

我在smarty中完全是新手,对它也没有太多了解也没有意识到它的语法。

我怎样才能做到这一点。

需要帮助....谢谢

2 个答案:

答案 0 :(得分:1)

function display() {
    $sql = "SELECT * FROM user WHERE id=" . $_POST['id'];
    $r   = mysql_query($sql);
    $row = mysql_fetch_row($r);
    return $row;
}

将结果变量分配到user.tpl

$this->mysmarty->assign('resArr',$resVar); 
$this->mysmarty->display('user.tpl');

使用foreach,您可以在user.tpl中显示结果

<ul>
{foreach $resArr as $value}
   <li>{$value@key}: {$value}</li>
{/foreach}
</ul>

答案 1 :(得分:1)

function display() {
        $sql = "SELECT * FROM user WHERE id=" . $_POST['id'];
        $r=mysql_query($sql);
        $row=mysql_fetch_row($r);
    }

要在smarty模板中获取值,您需要使用assign方法

$smarty->assign('rows',$rows);

在您的模板文件中,您可以使用 foreach function 来循环播放数组

{foreach from=$rows item="row"}
   {$row.name}<br/>
   {$row.Id}    
{/foreach}