php smarty模版引擎高手请进

index.php如下<?phprequire'libs/Smarty.class.php';$tmp=newSmarty;$tmp->template_dir="tem... index.php如下
<?php
require 'libs/Smarty.class.php';
$tmp = new Smarty;
$tmp->template_dir = "templates/templates";
$tmp->compile_dir = "templates/templates_c";
$tmp->config_dir = "templates/config";
$tmp->cache_dir = "templates/cache";
$tmp->caching = false;
$tmp->left_delimiter = '<{';
$tmp->right_delimiter = '}>';

include_once ('db.class.php');
$db = new mysql();
$qu = $db->query('select * from `test`');

$a = $qu[0][pid];
$b = $qu[0][name];
$c = $qu[0][pass];

$tittle = "带你跑着玩";
$body = "轻烟飘过";
$tmp->assign("title", $tittle);
$tmp->assign("body", $body);
$tmp->assign("pid", $a);
$tmp->assign("name", $b);
$tmp->assign("pass", $c);
$tmp->display('index.tpl');
?>
index.tpl如下
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ANSI">
<title><{$tittle}></title>
</head>
<body>
<p><{$body}></p>
<p><{$a}></p>
<p><{$b}></p>
<p><{$c}></p>
</body>
</html>
现在的问题是能显示出来"轻烟飘过",其他的不能显示,从mysql库中查找出来的数据$a$b$c单独输出能输出,所有路径可写,并且存在,检查N遍,没有错误,请教高手,求正确答案,
展开
 我来答
6246694
2011-05-14 · 超过13用户采纳过TA的回答
知道答主
回答量:48
采纳率:0%
帮助的人:43.7万
展开全部
汗一个,你给$a取的名字是“pid”,那么在模板里就要用{$pid}来调用它啊,调用{$a}当然无法输出啦。$b,$c也是同样的问题。
百度网友240e013
2011-05-14 · TA获得超过397个赞
知道小有建树答主
回答量:332
采纳率:40%
帮助的人:194万
展开全部
$tmp->assign("pid", $a);
$tmp->assign("name", $b);
$tmp->assign("pass", $c);
在smarty模板上使用时,上面是指将 pid变量使用$a的值,Smarty会自动将pid变为可以让Smarty使用的变量。
<{$pid}>
<{$name}>
<{$pass}>

-----
纳闷了~~你用$title和$body正确,怎么调用别的就错。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
庄明欣
2011-05-16 · TA获得超过636个赞
知道小有建树答主
回答量:268
采纳率:0%
帮助的人:200万
展开全部
$qu = $db->query('select * from `test`');
这里有错,$db->query返回的只是query,并没有结果,还需要使用fetch_array之类的mysql方法才能获得结果的。
比如
$result = array();
while($res = $db -> fetch_array($qu)){
$result[] = $res;
}
$tmp->assign("result", $result);
然后在模板里面用foreach循环出来一列新闻:
{foreach from=$result item=result}
<p>{$result.title}</p>
{/foreach}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式