我以前学的是ASP,现在刚开始学PHP,许多基本的东西都不懂。
下面是我遇到的一个解不开的问题。我准备修改PHPCMS2008首页登陆,在index.html里面“照葫芦画瓢”地添加了下面一段代码,我的本意是用来“判断登陆用户的类型”。但如下代码既不报错,也没有相应的记录(和实际应该不符)。<br><br>
      您现在已登陆<strong><font color="#00a844">
 
 <!-- {get sql="SELECT modelid FROM phpcms_member WHERE username ='{get_cookie(username)}'"}-->
          {if $r[modelid]==11}
          企业会员
      {else}
         普通会员
      {/if}
  <!--  {/get}-->    </font></strong>模式补充说明:当我独立仅使用 {get_cookie('username')}时,可以取得我想要的登陆用户名称,但放到SQL语句中作为限制条件就无法取得相应的数据。
另外如果我将username ='{get_cookie(username)}'改为某一个具体的登陆测试用户如username ='10000'则可以。自己不懂php,说得尽量详细点,就是希望能有一个乐于帮助别人的人来指点一下。谢谢!如果以上代码还有很多需要待解决的问题,我也就准备放弃了。

解决方案 »

  1.   

    建议从封装不深的php代码学起,像这种开源的cms一般都有封装的模板,数据库类,嵌套的比较深
      

  2.   

    username ='{get_cookie(username)}'修改为username ="{get_cookie(username)}"
      

  3.   

    上面的错了<!-- {get sql="SELECT modelid FROM phpcms_member WHERE username ='{get_cookie(username)}'"}-->这个是模板语法,你必需把{get_cookie('username')}赋值给一个变量,再传进sql中, 
      

  4.   


    有, 模板的语法错了, 建议你先看一下PHPCMS2008的模板语法再做
      

  5.   


    看五楼, 那是语法错误, 你必须看一下PHPCMS2008的模板定义的语法才能做。
      

  6.   

    能不能就直接在这里“赋值给一个变量,”(就想ASP那样简单)还是要到其它的,比如需要到原始模板里。
    因为,当我独立仅使用 {get_cookie('username')}时,可以取得我想要的登陆用户名称,感觉数据已经传过来了,仅是语句语法的错误。如果以上代码还有很多需要待解决的问题,我也就准备放弃我的“美好想法”了。分数还是一定要送给大家的,谢谢大家的热情指点。对我来说已经获益匪浅了。
      

  7.   


    能就直接在这里“赋值给一个变量,”关键是要弄清楚phpcms2008它们定义的模板语法是如何在一个模板里声明赋值变量