由于下面的代码和错误,我的$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错误严重性:Notice Message: Undefined变量:headerVersion文件名:include/template1.php数量:4
遇到错误
无法加载请求的文件:includes/.php
$data初始化了两次。一次在函数的开始,另一次在else条件下上传。在上传的else条件中像这样改变
$data['field_input_name'] = $w['file_name'];
$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()
;对于其他一些错误检测或调试