欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

TP框架的这句话哪里不对?

程序员文章站 2022-05-28 09:53:32
...
$info=M("qq")->where('name like','$name%')->select();

where里面是不是写的不对?给如下的错误提示:1064:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1 [ SQL语句 ] : SELECT * FROM qq WHERE ( name like )

如果按百度出来的like的例子username like 'Admin%' 这样写的话
$info=M("qq")->where(name like '$name%')->select();
也是会报错:syntax error, unexpected 'like' (T_STRING)

回复内容:

$info=M("qq")->where('name like','$name%')->select();

where里面是不是写的不对?给如下的错误提示:1064:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1 [ SQL语句 ] : SELECT * FROM qq WHERE ( name like )

如果按百度出来的like的例子username like 'Admin%' 这样写的话
$info=M("qq")->where(name like '$name%')->select();
也是会报错:syntax error, unexpected 'like' (T_STRING)

$info=M("qq")->where("name like '%s'",array($name))->select();

有时间可以看下 where方法的源码 或 看下pdo参数绑定 会有很大帮助

//试试用这段代码:

M('qq')->where(['name'=>['LIKE',"$name%"])->select();

见tp文档:http://www.kancloud.cn/manual/thinkphp/1768

不谢。

相关标签: php thinkphp