Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не срабатывает цыкл обработки загрузки файлов

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Не работает цыкл загрузки
biryukovm
Отправлено: 15 Октября, 2015 - 02:46:17
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Привет форумчане.
У меня проблема такая. Я наше и переделал код и я мгу получить файл и записать его в нужную дерикторию. Но теперь проблема я не могу загружать несколько файлов

CODE (html):
скопировать код в буфер обмена
  1. <tr><td style="vertical-align: middle;"><label>Файл</label></td><td><input name="file[]" type="file"></td></tr>
  2. <tr><td style="vertical-align: middle;"><label>Файл</label></td><td><input name="file[]" type="file"></td></tr>


PHP:
скопировать код в буфер обмена
  1. $flag_file = 0;
  2. // Создаем каталог с датой
  3. if (is_dir("file/".date("m_Y"))){$flag_file = $flag_file+1;}else{@mkdir('file/'.date("m_Y"), 0777);chmod('file/'.date("m_Y"),0777);if (is_dir("file/".date("m_Y"))){$flag_file = $flag_file+1;}}
  4. // Зная что каталог с датой создан проверяем есть ли папка пользователя
  5. IF ($flag_file == 1){if (is_dir("file/".date("m_Y").'/'.$_SESSION['auth_id'])){$flag_file = $flag_file+1;}else{@mkdir('file/'.date("m_Y").'/'.$_SESSION['auth_id'], 0777);chmod('file/'.date("m_Y").'/'.$_SESSION['auth_id'],0777);if (is_dir("file/".date("m_Y").'/'.$_SESSION['auth_id'])){$flag_file = $flag_file+1;}}}
  6. $file_put = "file/".date("m_Y").'/'.$_SESSION['auth_id']."/"; // путь для сохранения
  7.  
  8.  
  9. //цыкл который я создавал
  10. foreach($_FILES['file']['name'] as $k=>$f) {if (!$_FILES['file']['error'][$k]) {
  11. //цыкл который я создавал
  12.  
  13.  
  14.     ini_set('memory_limit', '64M');
  15.     $maxsize = "100000000";
  16.     $extentions = array( "gif","txt","tpl","jpg","jpeg","png","zip", "rar","7z","tif","psd","swf","flv","avi","mpeg","mp4","mp3","wav", "ogg","ogm","doc","xls","ppt","djvu","djv","pdf","xlsx","xlsm","xlsb","xltm","xlam","xml","xlt","docx","docm","doc","dotx","dot");
  17.     $size = filesize ($_FILES['file']['tmp_name'][$k]);
  18.     $type = strtolower(substr($filename, 1+strrpos($filename,".")));
  19.     $new_name = $_FILES['file']['name'][$k];// имя файла
  20.         $new_name = strtr(stripWhitespaces($new_name), " ", "_");// с помощью функции мы удоляем невидемые символы и убираем проблеы заменяя слэшем
  21.         $new_name = strrev(mb_substr(strrev($new_name),mb_strlen($new_name)-(strrpos($new_name,".")))); // получаем имя файла без расширения
  22.         $microtime = microtime();
  23.         $microtime = strrev(mb_substr(strrev($microtime),mb_strlen($microtime)-(strrpos($microtime," "))));
  24.         $new_name = $new_name.'['.date("m.d.y").'_'.date("H:i:s").':'.$microtime.'].'.$type; //даем имя файла с датой и временем в милисикундах
  25.  
  26.     if($size > $maxsize){$_SESSION['select_result'] = $_SESSION['select_result'].'<div class="select_err">Файл больше 100 мб. Уменьшите размер вашего файла или загрузите другой.</div>';}
  27.     elseif(!in_array($type,$extentions)){$_SESSION['select_result'] = $_SESSION['select_result'].'<div class="select_err">Файл имеет недопустимое расширение "'.$type.'".</div>';} else
  28.     {
  29. if (copy($file, $file_put.$new_name)){
  30.        
  31.        
  32.     //mysql_query("UPDATE akt_narmotiv SET url_file='$new_name' WHERE id = '$id'",$link);
  33.     $_SESSION['select_result'] = $_SESSION['select_result']."Файл загружен!<br>Скопируйте адрес файла<br> <a href=".$file_put.$new_name."><b>".$file_put.$new_name."</b></a>";
  34.     }else {$_SESSION['select_result'] = $_SESSION['select_result'].'<div class="select_err">Файл НЕ был загружен.</div>';}}
  35.  
  36. //цыкл который я создавал
  37. }}
  38. //цыкл который я создавал
  39.  



покажите как правильно писать цыкл для загрузки файлов
 
 Top
DeepVarvar Супермодератор
Отправлено: 15 Октября, 2015 - 09:30:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




CODE (html):
скопировать код в буфер обмена
  1. <input name="file" type="file" multiple>
Так включается множественный выбор файлов в одном инпуте.
И все выбранные файлы загружаются ПО ОЧЕРЕДИ где каждый обрабатывается отдельно.
 
 Top
biryukovm
Отправлено: 15 Октября, 2015 - 10:32:11
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




DeepVarvar пишет:
Так включается множественный выбор файлов в одном инпуте.
И все выбранные файлы загружаются ПО ОЧЕРЕДИ где каждый обрабатывается отдельно.


я попробовал выбрать несколько файлов. вижу что проценты загрузки идет но самих файлов не загруженных
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с файловой системой и файлами »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB