я обнаружил проблему в своем коде в цикле for, это была загрузка одного файла после того, как он был перенаправлен на страницу индекса (это ошибка), если строка перенаправления должна быть вне цикла:)
Здесь полный рабочий кодпосле некоторой модификации с возможностью создания папки для каждого идентификатора пользователя (я беру код из стека, здесь используется :) спасибо большое)
на странице загрузки я использую
public function upload() {
$acc = $last_id;
$file_path = ".uploads/images/" . $acc . '/';
if (isset($_FILES['multipleUpload'])) {
if (!is_dir('uploads/images/' . $acc)) {
mkdir('.uploads/images/' . $acc, 0777, TRUE);
}
$files = $_FILES;
$cpt = count($_FILES ['multipleUpload'] ['name']);
$this->load->library('upload');
for ($i = 0; $i < $cpt; $i ++) {
$name = $files ['multipleUpload'] ['name'] [$i];
$_FILES ['multipleUpload'] ['name'] = $name;
$_FILES ['multipleUpload'] ['type'] = $files ['multipleUpload'] ['type'] [$i];
$_FILES ['multipleUpload'] ['tmp_name'] = $files ['multipleUpload'] ['tmp_name'] [$i];
$_FILES ['multipleUpload'] ['error'] = $files ['multipleUpload'] ['error'] [$i];
$_FILES ['multipleUpload'] ['size'] = $files ['multipleUpload'] ['size'] [$i];
$this->upload->initialize($this->set_upload_options($file_path));
if(!($this->upload->do_upload('multipleUpload')) || $files ['multipleUpload'] ['error'] [$i] !=0)
{
print_r($this->upload->display_errors());
}
else
{
$this->accidents_model->addphoto($name,$acc);
}
}
//======================================================================================
}
$this->session->set_flashdata('success', 'the files uploaded');
redirect('accidents/index'); // :) here must located outside for loop
}
}
public function set_upload_options($file_path) {
// upload an image options
$config = array();
$config ['upload_path'] = $file_path;
$config ['allowed_types'] = 'gif|jpg|png';
return $config;
}