首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我试图比较用户表中的sport_id,但是sport_id存储在数组中,如何与php进行比较?

我试图比较用户表中的sport_id,但是sport_id存储在数组中,如何与php进行比较?
EN

Stack Overflow用户
提问于 2016-08-27 08:54:04
回答 1查看 34关注 0票数 0

运动桌:

代码语言:javascript
复制
id   name
1    Athletics
2    Aerobics

用户表:

代码语言:javascript
复制
id  sports_type 
1     1,2        
2     1          

模型查询:

代码语言:javascript
复制
function select_sports($sports) 
{
    $this->db->select('id');
    $this->db->like('name', $sports); 
    $query = $this->db->get('sports');
    //print_r($query);exit();
    return $query->row();
} 

function get_filterde_user() 
{ 
    $sql = "SELECT * FROM users"; 
    $query = $this->db->query($sql); 
    return $query->result();
}

主计长:

代码语言:javascript
复制
 $sports = $this->input->post('sports');
 $query = $this->user_model->select_sports($sports);
 $sport_id = $query->id; 
 $sport_get = explode(',',$sport_id);
 $query = $this->user_model->get_filterde_user(); 
 $arr = array(); 
 foreach ($query as $row=>$value) {
     if ($value->sports_type != 0 && $value->user_type != 1) { 
         $sports_type = explode(',', $value->sports_type);
         foreach ($sport_get as $search) { 
             if (in_array($search, $sports_type)) {
                 echo  $arr[$row]['name'] = $value->user_name; die; 
             }  
         } 
     } 
 }

但它并没有给出所有与字段相关的sports_type

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-27 09:17:17

从您的数据库结构来看,它似乎退出了困难但不能接受,我建议数据库结构如下:

  1. 运动桌: id sport_name
  2. 用户表: id user_name user_adress
  3. user_sports: id users_id(用户表pk) sports_id(体育表pk)

然后尝试搜索操作,这将非常容易。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39179281

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档