学习 PHP模板引擎Smarty入门使用 出错:C:\AppServ\www\mb\smarty\Smarty.class.php on line 780
发布网友
发布时间:2022-04-22 20:34
我来回答
共2个回答
热心网友
时间:2023-10-28 01:30
一是设置那三目录用
$smarty->template_dir = './templates/';
$smarty->compile_dir = './templates_c/';
$smarty->cache_dir = './cache/'; 并确保这三目录存在并且路径正确.
二是你模板写法有误
应改为
新闻编号:{$newsID.newsID}<br>
新闻内容:{$newsID.newsTitle}<br><hr>
三开发期间最好别启用SMARTY CACHE 将 $smarty->caching = false;
热心网友
时间:2023-10-28 01:31
$smarty->template_dir = './templates/';
$smarty->compile_dir = './templates_c/';
$smarty->cache_dir = './cache/';
用上面部分替换掉下面这一段。
$smarty->templates("templates");
$smarty->templates_c("templates_c");
$smarty->cache("cache");
补充回答:
逻辑页面数组的传递方式和模板页面foreach的写法不匹配,随便改哪一边都可以。
下面是模板页面的改法,没测试过,但应该没问题,你直接把模板里面foreach那一整段替换成下面这样就可以了。
{foreach from=$newsArray item=news}
{foreach name=sub from=$news item=item}
{if $smarty.foreach.sub.first} 新闻编号:{$item}<br>{else}新闻内容:{$item}<br><hr>{/if}
{/foreach}
{foreachelse}
对不起,数据库中没有新闻输出!
{/foreach}