php外键有多个id组成,php - Codeigniter:如何使用外键id从外表获取不同的列数据? - SO中文参考 - www.soinside.com...

这篇博客讨论了如何在PHP中从数据库获取班级数据,并在显示时将教师ID替换为教师姓名。作者提供了类视图中的代码示例,展示了如何在控制器和模型中操作,以获取班级和教师信息。当在班级列表中展示数据时,他们希望显示教师的全名而非ID。
摘要由CSDN通过智能技术生成

我能够成功获取下表中的数据。但是,在“班级老师”栏中,我想要教师姓名而不是教师ID(外键)eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS83ajJvSy5qcGcifQ==

这是数据库表

eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS84QmhJVS5qcGcifQ==

以下是我在类视图中获取数据的方法

if( !empty($class_data) ) {

foreach ($class_data AS $row) {

?>

<?php echo $row->class_id; ?><?php echo $row->grade; ?> <?php echo $row->name; ?><?php echo $row->capacity; ?> <?php echo $row->teacher_id; ?>

我的控制器

function index()

{

$teacher_data= $this->Tableview_model->fetch_teacher_data();

$class_data = $this->Tableview_model->fetch_class_data();

$data["teacher_data"] = $teacher_data;

$data["class_data"] = $class_data;

$this->load->view('classes',$data);

}

function add_class()

{

$class_data = array(

'class_id' => '',

'grade' => $this->input->post('grade'),

'name' => $this->input->post('class_name'),

'capacity' => $this->input->post('capacity'),

'teacher_id' => $this->input->post('class_teacher'),

);

$insert = $this->Model_Action->insertTable('class',$class_data);

echo json_encode(array("status" => TRUE));

}

教师数据库表

CREATE TABLE teacher(teacher_id int(11)NOT NULL AUTO_INCREMENT,t_f_name varchar(250)NOT NULL,t_last_name varchar(250)NOT NULL,DOB date NOT NULL,t_email varchar(250)NOT NULL,t_address varchar(500)NOT NULL, t_tel varchar(150)NOT NULL,t_username varchar(250)NOT NULL,t_password varchar(500)NOT NULL,qualifications varchar(5000)NOT NULL,t_date_of_join date NOT NULL,t_date_of_leaving date NOT NULL,t_current_status int(1)NOT NULL, PRIMARY KEY(teacher_id))ENGINE = InnoDB AUTO_INCREMENT = 8 DEFAULT CHARSET = latin1

模型fetch_class_data函数

function fetch_class_data()

{

$this->db->select("*");

$this->db->from('class');

$query=$this->db->get();

if($query->num_rows() > 0)

{

return $query->result();

}else{

return false;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值