我对Codeigniter有问题。我尝试将值从视图传递到控制器,并且它可以正常工作。但是,当它从控制器传递到模型时会出现问题。它没有向View返回任何值。
这是我的控制人:
public function Edit2G() {
$id = $this->uri->segment(3);
$this->load->model("main_model");
$data['fetch_data_2G_where'] = $this->main_model->fetch_data_2G_id($id);
$data['id'] = $id;
$data['title'] = "Update Data 2G";
$this->load->view('templates/header');
$this->load->view("pages/Update2G", $data);
$this->load->view('templates/footer');
}
这是模特
function fetch_data_2G_id($id)
{
$get_2G_data_stored_proc = "CALL Get_2G_Data(?)";
$data = array( 'id' =>$id);
$query = $this->db->query($get_2G_data_stored_proc, $data);
$result = $query->result_array();
return $get_2G_data_stored_proc;
}
这是我的观点
<h2 align="center"><?=$title ?></h2>
<h3 align="center"><?=$id ?></h3>
<p align="center"><?php echo $fetch_data_2G_where['id'];?></p> //This is a test
<?php echo form_open('posts/update'); ?>
<input type="hidden" name="id" value="<?php //echo $fetch_data_2G_where['id']; ?>">
<div class="form-group">
<label>Site ID</label>
<input type="text" class="form-control" name="title" placeholder="add title" value="<?php //echo $fetch_data_2G_where['site_name'];?>">
</div>
这是存储过程的结果
id, id_site, site_name, bsc_name, bcf_id, vlan1, vlan2, status,status_vlan
'1', 'COK008', 'Combat Batylon754','FBTIMIKA-1','BCF-0112', '3677', '3137', '', 'Metro E'
这是我得到的错误
遇到PHP错误严重性:警告
消息:字符串偏移量'id'非法
文件名:pages / Update2G.php
行号:3
回溯:
文件:C:\ xampp \ htdocs \ DapotTimika \ application \ views \ pages \ Update2G.php 行:3函数:_error_handler
文件:C:\ xampp \ htdocs \ DapotTimika \ application \ controllers \ Pages.php 行:46功能:查看
文件:C:\ xampp \ htdocs \ DapotTimika \ index.php行:315功能: require_once
我想念什么?
PS:存储过程只有一个参数(id)返回/获取数据
答案 0 :(得分:0)
在控制器print_r中的以下行
$data['fetch_data_2G_where'] = $this->main_model->fetch_data_2G_id($id);
echo "<pre>"; print_r($data['fetch_data_2G_where']);
仅查看查询返回的结果是什么。然后从您的结果中进行分析并获得所需的结果。
答案 1 :(得分:0)
谢谢你们的答案,我找到了答案。
我忘了将模型的返回值解析为数组。模型和控制器中的代码很好。
这是我的查看代码
<?php
if($fetch_data_2G_where->num_rows() > 0)
{
foreach($fetch_data_2G_where->result_array() as $data)
{
?>
<input type="hidden" name="id" value="<?php echo $data['id']; ?>">
<div class="form-group">
<label>Site ID</label>
<input type="text" class="form-control" name="site_id" value="<?php echo $data['id_site'];?>">
<?php } ?>
这是结果