PHP高手请进 smarty错误!

具体情况如下:1.smarty版本为3.08稳定版,php是5.2,阿帕奇2,windows7sp1操作系统;(phpstudy2010搭建环境)2.官方演示运行正常;但... 具体情况如下:
1.smarty版本为3.08 稳定版,php是5.2,阿帕奇2,windows7sp1操作系统;(phpstudy2010搭建环境)
2.官方演示运行正常;但官方演示完全默认的目录,没有进行配置;
3.所有目录均为everybody完全控制;
具体代码如下
代码如下:
<?php
if (!defined('SMARTY_DIR')) {
define('SMARTY_DIR', "../libs/");
}

require_once ("../config/config.php");
require_once ("../libs/Smarty.class.php");

class sm extends Smarty{};

$sm = new sm;

//$sm->smarty();
$sm->debugging = true;
$sm->caching = false; //调试期间最好关闭
$sm->cache_lifetime = 120;
$sm->template_dir = "../data/template/";
$sm->compile_dir = "../data/compile/";
$sm->cache_dir = "../data/cache/";
$sm->left_delimiter = "<{";
$sm->right_delimiter="}>";

$sm->assign("name","boy");
$sm->display('test.htm');
/*
出现下面错误

谢谢

Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template "../data/template/test.htm" on line 9 "<{name}>" unknown tag "name"' in E:\www\iceplayer\libs\sysplugins\smarty_internal_templatecompilerbase.php:441 Stack trace: #0 E:\www\iceplayer\libs\sysplugins\smarty_internal_templatecompilerbase.php(263): Smarty_Internal_TemplateCompilerBase->trigger_template_error('unknown tag "na...', 9) #1 E:\www\iceplayer\libs\sysplugins\smarty_internal_templateparser.php(2356): Smarty_Internal_TemplateCompilerBase->compileTag('name', Array) #2 E:\www\iceplayer\libs\sysplugins\smarty_internal_templateparser.php(2846): Smarty_Internal_Templateparser->yy_r38() #3 E:\www\iceplayer\libs\sysplugins\smarty_internal_templateparser.php(2946): Smarty_Internal_Templateparser->yy_reduce(38) #4 E:\www\iceplayer\libs\sysplugins\smarty_internal_smartytemplatecompiler.php(51): Smarty_Internal_Templateparser->doParse(11, '??') #5 E:\www\iceplayer\libs\sysplugins\smarty_internal_templatecompilerbase.php(82): in E:\www\iceplayer\libs\sysplugins\smarty_internal_templatecompilerbase.php on line 441

*/

?>
展开
 我来答
百度网友d7e10266d1
2011-09-01 · TA获得超过5480个赞
知道小有建树答主
回答量:713
采纳率:0%
帮助的人:715万
展开全部
问题说的很清楚啊
模板../data/template/test.htm第9行变量错误啊
Smarty变量分两种 模板变量(在模板中定义的,使用$开头)和配置变量(在外部配置文件中定义的,使用#开头)
将此文件中第9行的<{name}>更改为<{$name}>即可
百度网友e4e44cb
2011-09-01 · TA获得超过106个赞
知道答主
回答量:126
采纳率:0%
帮助的人:75.8万
展开全部
是不是php.ini配置文件没有进行配置:
找到php.ini配置文件(可以通过运行phpinfo()查看文件路径),修改php.ini的 include_path选项,把smarty库文件的路径加上。要修改windows下使用的:
; Windows: "\path1;\path2"
include_path = ".;c:\php\includes;D:\PHP\Smarty\libs"
记得把前面的分号去掉并重启apache。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tg0729000208
2011-09-01 · TA获得超过3.8万个赞
知道大有可为答主
回答量:2.6万
采纳率:0%
帮助的人:5878万
展开全部
汗一个,你给$a取的名字是“pid”,那么在模板里就要用来调用它啊,调用当然无法输出啦。$b,$c也是同样的问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式