我的$ data数组没有按照下面的代码和错误传递给视图。
public function myAccount(){
$data = array(
'templateVersion' => 'template1',
'headerVersion' => 'header2',
'css' => '',
'navBarVersion' => 'navBar2',
'main_content' => 'myaccount/myAccount',
'page_title' => 'example.com - My Account',
'footerVersion' => 'footer2'
);
if (($this->session->userdata('is_logged_in')) == 1) {
$config['upload_path'] = $this->logo_path;
$config['allowed_types'] = 'gif|jpg|png|jpeg';
$config['encrypt_name'] = TRUE;
$this->load->library('upload', $config);
if ($this->input->post('upload')) {
if(!$this->upload->do_upload('userfile')){
echo $this->upload->display_errors('<p>', '</p>');
} else {
$w = $this->upload->data();
$data = array(
'field_input_name' => $w['file_name'],
);
//$this->db->insert('table_image', $data);
echo "here";
//exit;
}
}
//******************************************
// For some reason, $data is not passed in!
// Have posted the web screen error far below.
$this->load->view('includes/template1', $data);
}else{
redirect('site/restricted');
}
}
/////////////////////////////////////////////// /////////////////////
遇到PHP错误严重性:通知消息:未定义 变量:headerVersion文件名:includes / template1.php行 数量:4
遇到错误
无法加载请求的文件:includes / .php
答案 0 :(得分:1)
您已初始化$ data两次。一旦进入函数的开头,再次进入upload的else条件。其他上传条件就像这样改变了
$data['field_input_name'] = $w['file_name'];
它会起作用。
答案 1 :(得分:0)
$data array's keys are converted into variables
$data['someKey'] = array(
'templateVersion' => 'template1',
'headerVersion' => 'header2',
'css' => '',
'navBarVersion' => 'navBar2',
'main_content' => 'myaccount/myAccount',
'page_title' => 'example.com - My Account',
'footerVersion' => 'footer2'
);
在视图中,您可以print_r($someKey);
进行访问
使用die(var_dump($someKeys));
查看结果
当您尝试在CI中上传图像时,您可以使用
echo $this->image_lib->display_errors()
;用于其他一些错误检测或调试