• PHPcms v9 get标签sql 语句limit无效问题的解决方法


    get标签非常好用,自定义模型后get几乎变成万能的了。但是PHPCMS升级到V9后,把2008的很多功能都去掉了,比如get标签中,在后面自动添加了一个LIMIT 0,20,这样你即使写了num='数字'也没用,写在SQL语句里面,例如

    {pc:get sql="SELECT * FROM v9_news ORDER BY id DESC LIMIT 2,5" cache="3600" page="$page" dbsource="discuz" return="data"}
    

    就会报错,打印出来的SQL语句是:

    SELECT * FROM v9_news ORDER BY id DESC LIMIT 2,5 LIMIT 0,20
    

    这样很明显是错误的。有2个方法,其中第二种方法最绝,直接贴代码:

      1.比如

    {pc:get sql="SELECT title,url FROM v9_news where catid=9 and status=99 order by updatetime desc" start="0" num="4" return="v"}
    

    可以加入start 和 num 来控制。

      2.(比较绝的方法)

    {pc:get sql="SELECT title,url FROM v9_news where catid=9 and status=99 order by updatetime desc limit 0,4--" return="v"}
    

      注意4后面的两个减号,把v9自带的LIMIT 0,20语句给注释了!

  • 相关阅读:
    修改表中的列
    查看表中都有什么约束
    数据库关系图
    删除约束
    T_SQL 语句想已有数据表添加约束
    判断回文联
    python自定义函数可以向前引用不用声明
    所有参数的和乘以基数
    子字符串在目标字符串中出现的次数
    除二取余倒序排列
  • 原文地址:https://www.cnblogs.com/mracale/p/9122522.html
Copyright © 2020-2023  润新知