为了账号安全,请及时绑定邮箱和手机立即绑定

如何在编辑页面显示记录?

如何在编辑页面显示记录?

PHP
RISEBY 2021-09-05 17:53:22
我是 MySQL 的新手,我正在使用 CodeIgniter。我有三个名为lead, document, 和 的表bank。现在我要做的是,在lead表中插入唯一的客户个人信息。在document表中,我正在插入用户文档。在bank表中,我正在插入银行记录。它可以是多个。插入没有问题。我在从数据库中获取数据时遇到了这个问题。现在表结构是带领id  | name   | mobile     | email  1   | asdff  |1234567831  |asd@gmail.com2   | kjhgg  |1231231231  |mnhg@gmail.com3   | qwsde  |1231233212  |oiuk@gmail.com<!--many more-->文档doc_id  |doc_name    | doc_date  | lead_id |date_of_added1       |asdasd      |2019-06-24 | 1       |2019-06-16 17:31:072       |oiuytr      |2019-06-24 | 2       |2019-06-16 17:31:073       |okjhyt      |2019-06-25 | 3       |2019-06-20 20:12:09<!--many more--> 银行bank_id  | bankname  | lead_id |date_of_added1        | sdasdas   | 1       |2019-06-20 11:41:342        | asdasdasd | 1       |2019-06-21 10:41:343        | asdakjkh  | 2       |2019-06-21 14:23:124        | qwerfgvf  | 1       |2019-06-21 23:56:25<!--many more--> 到目前为止,文件和银行之间没有任何联系。我应该使用 id 连接吗?模型public function getconfirmLeadinfo($id){   return  $result = $this->db->select('*')                     ->from('lead')                     ->join('document','lead.id=document.lead_id','LEFT')                     ->join('bank','lead.id=bank.lead_id','LEFT')                     ->where('lead.id',$id)                     ->get()                     ->result();  }我得到的输出是Array(    [0] => stdClass Object        (            [id] => 1            [name] => asdff            [mobile] => 1234567831            [email] => asd@gmail.com            [doc_id] => 1            [doc_name] => asdasd            [doc_date] => 2019-06-24            [lead_id] => 1            [date_of_added] => 2019-06-16 17:31:07            [bank_id] => 1            [bankname] => sdasdas            [lead_id] => 1            [date_of_added] => 2019-06-20 11:41:34         )
查看完整描述

3 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

使用两个单独的查询如下:


$data = [];

$lead = $this->db->select('*')->from('lead')->get()->row();

$data['lead'] = $lead;

if($lead){

  $bank = $this->db->select('*')->where('lead_id', $lead->lead_id)->from('bank')->get()->result();

$data['bank '] = $bank ;

}



// you can retrive documet like bank details



return $data

然后你可以通过$data查看和使用lead以及bank变量,如果它存在。


查看完整回答
反对 回复 2021-09-05
?
潇湘沐

TA贡献1816条经验 获得超6个赞

  1. 你必须从表中取出不同的记录,我可以看到结果是重复的,所有的细节都是一样的,为什么你不能使用 INNER JOIN 而不是 left。

  2. 您将通过使用 ->row() 而不是 ->result() 来获得单条记录;

  3. 然后您可以使用与您在编辑页面中所做的相同的

使用 foreach

<?php

 foreach ($result as $key => $value) {

    if ($value){?>

        <input type="hidden" name="id[]" value="<?php echo $value->id;?>">

        <input type="text" name="name[]" value="<?php echo $value->name;?>">

        <input type="text" name="mobile[]" value="<?php echo $value->mobile;?>">

        <input type="text" name="email[]" value="<?php echo $value->email;?>">

        <input type="text" name="doc_name[]" value="<?php echo $value->doc_name;?>">

        <input type="text" name="doc_date[]" value="<?php echo $value->doc_date;?>">

<?php  }

}

?>


查看完整回答
反对 回复 2021-09-05
  • 3 回答
  • 0 关注
  • 222 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信