Codeigniter by 3我正在尝试为多个上传创建一个控制器。 我的vontroller:
public function do_upload($path)
{
$files = $_FILES['file'];
$num_file = count($_FILES['file']['name']);
echo $num_file;
for($i=0; $i<=$num_file; $i++)
{
if(isset($files['name'][$i]))
{
echo $this->session->userdata('dir_corso');
$this->_CI->session->set_userdata(array('filename'=> $files['name'][$i]));
$this->load->library('upload', $this->set_upload_options());
$this->upload->initialize($this->set_upload_options());
chmod($path, 0777);echo '<br/>'.$this->_CI->session->userdata('filename');
$this->upload->do_upload($files['name'][$i]);
$error = array('error' => $this->upload->display_errors());
foreach($error as $errore) echo $errore;
public function set_upload_options(){
$config['upload_path'] = $this->session->userdata('dir_corso');
$config['allowed_types'] = 'gif|jpg|png|GIF|JPG|PNG';
$config['overwrite'] = TRUE;
if(!empty($this->session->userdata('filename'))){
$config['file_name'] = $this->session->userdata('filename');
}
$config['max_size'] = 100;
$config['max_width'] = 1024;
$config['max_height'] = 768;
$config ['encrypt_name'] = TRUE;
return $config; }}}
我没有收到任何错误。 为什么不上传文件?
帮助我。
答案 0 :(得分:0)
另一个函数里面的函数??希望这是问题,
试试这个,
public function do_upload($path) {
$files = $_FILES['file'];
$num_file = count($_FILES['file']['name']);
echo $num_file;
for ($i = 0; $i <= $num_file; $i++) {
if (isset($files['name'][$i])) {
echo $this->session->userdata('dir_corso');
$this->_CI->session->set_userdata(array('filename' => $files['name'][$i]));
$this->load->library('upload', $this->set_upload_options());
$this->upload->initialize($this->set_upload_options());
chmod($path, 0777);
echo '<br/>' . $this->_CI->session->userdata('filename');
$this->upload->do_upload($files['name'][$i]);
$error = array('error' => $this->upload->display_errors());
foreach ($error as $errore)
echo $errore;
}
}
}
public function set_upload_options() {
$config['upload_path'] = $this->session->userdata('dir_corso');
$config['allowed_types'] = 'gif|jpg|png|GIF|JPG|PNG';
$config['overwrite'] = TRUE;
if (!empty($this->session->userdata('filename'))) {
$config['file_name'] = $this->session->userdata('filename');
}
$config['max_size'] = 100;
$config['max_width'] = 1024;
$config['max_height'] = 768;
$config ['encrypt_name'] = TRUE;
return $config;
}