我有两个文件夹分别是test和template,在test文件夹里有两个文件分别是demo1.php,demo2.php, template文件夹的两个文件分别是demo1.tpl,demo2.tpl:
在demo1.php的代码是
<?php
 $name="test";
 $this->assign("name",$name);
?>在demo1.tpl中的代码是:
{include_php file="demo1.php"}
{$name}然后我在demo2.tpl中调用demo1.tpl,代码是
{include file="demo1.tpl"}demo2.php的代码是:
<?php
 require_once("smartyInit.php");  //调用模板的类
 $smarty->display("demo2.tpl");
?>我遇到的问题是我在本地上测试的时候没有问题,但是我上传到远程服务器的时候却出错了,怎么到找不出原因,还请各位指导我一下,谢谢了!

解决方案 »

  1.   

    在demo1.tpl中的代码是:
    {include_php file="demo1.php"}
    {$name} ----你这个什么意思?自己包含自己?有必要么?
      

  2.   

    手册上是这么写的,出错的原因就是我要的结果没有显示出来.没有具体的提示,不知道你们在用include_php的时候是怎么使用的,有更好的方法可以跟我说说吗
      

  3.   

    模板不要调用PHP 本来逻辑和表现是分离的 干嘛又要混在一起而且在模板中使用PHP要{php}{/php} 调用PHP文件是不行的
      

  4.   

    我觉得你还是理一下,你的业务逻辑,较好,理顺了。一般是模板调用模板,程序调用程序。
    比如:在demo1.php的代码是
    <?php
     $name="test";
     $this->assign("name",$name);
    ?>在demo1.tpl中的代码是:
    {$name}然后我在demo2.tpl中调用demo1.tpl,代码是
    {include file="demo1.tpl"}demo2.php的代码是:
    <?php
     require_once("smartyInit.php");  //调用模板的类
     include_once("demo1.php");
     $smarty->display("demo2.tpl");
    ?> 
      

  5.   

    模板里包含PHP文件需这个{php}{/php}------------------------------------------
    酷得组件仓库 - 第三方软件开发组件下载\试用
    www.cookcode.net