ajax — PHP получает только один файл из нескольких запросов на загрузку файлов одновременно

Поэтому я пытаюсь загрузить несколько файлов,

Контролирую файлы, загруженные пользователем через SESSION переменная в CodeIgniter, установив переменную сеанса для хранения имени файла каждый раз при загрузке файла и объединение его с прежними именами файлов, если таковые имеются, создавая таким образом массив файлов, загруженных пользователем в отдельном сеансе.

И вот что у меня есть …

if (!$this->upload->do_upload("user_file")) {
//I do stuff that handles the failure
}else{
$data = $this->upload->data();
//
//Grab the TEMP file
$array[] = array('filename'=>$data['file_name']);

//Add the temp file to the session

if($this->session->userdata('uploaded_files')){
$temp_file = $this->session->userdata('uploaded_files');
$this->session->set_userdata('uploaded_files',array_merge($array,$temp_file));

}else{
//no need to merge since its the first one
$this->session->set_userdata('uploaded_files',$array);
}
}

Моя проблема в том, что когда PHP получает несколько запросов одновременно, он обрабатывает только первый в очереди
Только занимает один в финише

И когда я даю ему один запрос за раз, он берет их все
Берет их всех

Так что у меня нет гарантии, что файлы будут загружены в разное время, э-э-э … как я могу сделать так, чтобы в моем массиве были загружены все имена файлов без учета времени окончания, возможно, использование сессии не очень хороший подход ?

PS: На стороне сервера есть все мои файлы, в том числе те, которые не попали в массив загружаемых файлов

2

Решение

Вы можете получить имена файлов из переменной $ _FILES, используя индекс ‘name’ (например, $ _FILES [‘myfile1’] [‘name’]).

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]