Php 带连接的Codeigniter搜索
我不知道为什么这段代码不起作用,所以任何帮助都将不胜感激 我想搜索一个用户用户名,并显示他们的角色名称,该名称存储在配置文件表中Php 带连接的Codeigniter搜索,php,mysql,codeigniter,tankauth,Php,Mysql,Codeigniter,Tankauth,我不知道为什么这段代码不起作用,所以任何帮助都将不胜感激 我想搜索一个用户用户名,并显示他们的角色名称,该名称存储在配置文件表中 $search = $_POST['search']; $this->db->join('user_profiles', 'user_profiles.id = users.id'); $this->db->like('username',$search); $this->db->or_like('user_profiles.ch
$search = $_POST['search'];
$this->db->join('user_profiles', 'user_profiles.id = users.id');
$this->db->like('username',$search);
$this->db->or_like('user_profiles.character_name',$search);
$data['users'] = $this->db->get('users');
页面似乎没有任何错误,但无论我在搜索中键入什么,我都会得到0个结果
已解决:代码没有问题,这是我的表单验证。请注意,最好将您的POST array Assignment重写为
$search = $this->input->post('search');
还有一点——如果这是一个模型,最好用搜索项作为变量调用该方法,并将结果作为对象或数组返回给控制器。这样写的话,你就打破了MVS模式。我建议你在
$this->db->get()之后运行以下命令
这将允许您调试正在运行的查询。这将突出显示输入条件和查询本身的问题。能否运行echo$This->db->last_query()
并将实际运行的查询添加到您的问题中?这帮助我解决了问题,我的表单验证规则破坏了一切。谢谢很高兴这有帮助。我是将我的评论作为答案发布,还是您将发布您的解决方案?将其作为答案发布,解决方案并不是真正的解决方案。我刚刚设置了错误的验证标准。除息的
echo $this->db->last_query();