开发者社区> 问答> 正文

thinkphp_sql查询语句

在thinkphp的控制器中写sql语句的时候,哪种写法是正确的?

$result = $m->where('username="'.$user.'"')->find();
$result = $m->where('username='.$user)->find();

【代码A】

    public function checkuser(){

        $user = I('post.user');

        $m = M('users');

        $result = $m->where('username="'.$user.'"')->find();

        $this->ajaxReturn($result);

    }
【代码B】

    public function checkuser(){

        $user = I('post.user');

        $m = M('users');

        $result = $m->where('username='.$user)->find();

        $this->ajaxReturn($result);

    }

展开
收起
a123456678 2016-07-01 11:40:55 2180 0
1 条回答
写回答
取消 提交回答
  • 建议还是用官方的例子。

    $User = M("users");
    $condition['username'] = $user;
    $User->where($condition)->select(); 
    A、B两种都不防御SQL注入
    
    对ThinkPHP不是很了解,貌似要
    
        I('post.name','','htmlspecialchars');

    这样获取才可以过滤一些危险的符号

    2019-07-17 19:49:53
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
SQL Server 2017 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载