【发布时间】:2016-09-10 08:44:57
【问题描述】:
伙计们,我的数据库中有三个包含数据的表格,如下面的链接所示。 在 class 和 subject 表上,ssid 和 csid 是来自 members 的外键。
我使用左连接连接表,如下面的模型代码所示。
当我为John claudius 回显 first_name, surname 和 class_name 时,它出现了 3 次,而 Alex massawe 只出现了一次。
但是如果我为Alex massawe 添加信息,结果将显示与Alex massawe 的信息一样多的次数
属于科目。
我需要您的帮助,这样如果在表格subjects上为一个名字已经在表格成员中的人添加信息,则不会重复给出的信息。
数据库中的表
成员
sid first_name 姓
a001 亚历克斯 massawe
a002 约翰 克劳狄斯
类
id csid 类名
01 a001 baby_class
02 a002 Class_one
主题
id ssid subject_name
01 a002 数学
02 a002 文学
03 a002 沟通技巧
代码
型号:
function get_particular($sid){
$this->db->select('*');
$this->db->from('members m');
$this->db->join('subjects', 'm.sid=s.ssid', 'left');
$this->db->join('class c', 'm.sid=c.csid', 'left');
$this->db->where('m.sid', $sid);
$query = $this->db->get();
return $query->result_array();
}
控制器:
函数特定($sid){
$sid=$this->uri->segment(3);
$this->load->model('names');$this->data["names"]=$this->names_rank->get_particular($sid);
$this->load->view("view/details", $this->data);
}
查看:
foreach($names as $name) {
echo $name['sid'].' '。 $name['first_name']。' '。 $name['姓氏']。' '.$name['class_name'];
}
【问题讨论】:
标签: php codeigniter