gpt4 book ai didi

php - 在 codeigniter 中显示来自两个表的数组数据

转载 作者:行者123 更新时间:2023-11-30 22:10:11 24 4
gpt4 key购买 nike

我的数据库中有两个表,monitor [pk = idMonitor] 和 monitor_data [pk = idMonitor_data]

Please click you can see the tables fields here .如您所见,我将数组数据放在表 monitor_data 中。

我想为每个 idinventory where monitor_data.idMonitor = $id 更新条件。

但首先我想将数据库中的“monitordate”、“idinventory”和“condition”的当前数据显示到我的 View 中。

我的 Controller

public function edit($id=0) {
$dataa = $this->monitor_m->get_record(array('monitor_data.idMonitor'=>$id),true);


$this->data->monitordate = $dataa->monitordate;
$this->data->condition = $dataa->condition; <-line 20

$this->data->detail = $this->monitor_m->get_record(array('monitor_data.idMonitor'=>$id),true);

$this->template->set_title('SMIB | Monitoring')
->render('monitor_edit',$this->data);
}

我的观点(monitor_edit)

<?php echo form_open(site_url("monitor/ubah"),'data-ajax="false"'); ?>
<?php foreach ($detail as $items): ?>
<h4><?php echo '[ '.$items['idinventory'].' ] '?> </h4>
<?php echo form_label ('Condition : ');
echo form_dropdown('condition', array('good'=>'Good','broke'=>'Broken','lost'=>'Lost'),@$items['condition']);
?>
<?php endforeach; ?>
<?php echo form_close(); ?>

我的模型

class Monitor_m extends MY_Model {

public function __construct(){
parent::__construct();
parent::set_table('monitor','idMonitor');
}

public function get_record($id = 0,$get_user = FALSE) {
$this->db->where($id);
if ($get_user){
$this->db->join('monitor_data','monitor_data.idMonitor = monitor.idMonitor');
$this->db->join('inventory','inventory.idinventory = monitor_data.idinventory');
$this->db->join('user','user.id_user = monitor.id_user');

}
$data = parent::get_array();

return $this->improve_data($data);

}

这是我的问题:它在我的 Controller 中的 monitordate 代码工作正常,但我不断收到 condition 代码的错误

可能是因为我使用 'monitor_data.idMonitor' 作为我的参数 $id 而不是 idinventory。我如何使用 2 个参数,例如 where idMonitor=$id and idinventory=$idiventory

我解释的对吗?

Severity: Notice Message: Trying to get property of non-object
Filename: controllers/monitor.php Line Number: 20

请帮助我,我不知道我的 Controller 出了什么问题 :( 我正在寻找解决方案,但没有一个有效。:(

最佳答案

能获取到monitordate却获取不到condition很奇怪

你能把你的 Controller 改成这样吗?

public function get_record($id = 0,$get_user = FALSE) {
$this->db->where($id);
if ($get_user){
$this->db->join('monitor_data','monitor_data.idMonitor = monitor.idMonitor');
$this->db->join('inventory','inventory.idinventory = monitor_data.idinventory');
$this->db->join('user','user.id_user = monitor.id_user');

}
// $data = parent::get_array();
$data = $this->db->result_array();
print_r($data);
echo $this->db->last_query();
exit;

return $this->improve_data($data);

}

关于php - 在 codeigniter 中显示来自两个表的数组数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40332687/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com