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]   

> Без описания
Ammiak
Отправлено: 19 Июня, 2012 - 20:52:24
Post Id


Частый гость


Покинул форум
Сообщений всего: 232
Дата рег-ции: Апр. 2011  


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




Здравствуйте, есть форма загрузки файла и div под ней. Нужно чтобы при нажатии на кнопку "Ок" в div'е выводилось название загружаемого файла. Делаю так:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <form enctype="multipart/form-data">
  3. <label for="add_files">Добавить файлы:</label><input id="add_files" name="add_files" type="file" />
  4. <input type="submit" value="Ok" />
  5. </form>
  6.  
  7. <div id="bottom_div"><?php print_r($_FILES['add_files']['name']) ?></div>
  8.  

При загрузке страницы в div'е выводится варнинг:
Цитата:

Filename cannot be empty

Подскажите пожалуйста, можно ли как-то реализовать?

(Отредактировано автором: 19 Июня, 2012 - 20:53:24)

 
 Top
fdr21
Отправлено: 19 Июня, 2012 - 21:06:59
Post Id



Гость


Покинул форум
Сообщений всего: 86
Дата рег-ции: Июнь 2012  


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




укажате:
method="post"
Все должно работать!
 
 Top
Ammiak
Отправлено: 19 Июня, 2012 - 21:14:39
Post Id


Частый гость


Покинул форум
Сообщений всего: 232
Дата рег-ции: Апр. 2011  


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




дело в том что сама форма загружается fancybox'ом, может в этом дело? если я просто создаю отдельную страницу с этой формой то все работает

(Отредактировано автором: 19 Июня, 2012 - 21:15:26)

 
 Top
Ammiak
Отправлено: 20 Июня, 2012 - 08:52:38
Post Id


Частый гость


Покинул форум
Сообщений всего: 232
Дата рег-ции: Апр. 2011  


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




кто-нибудь?
Вкратце ситуация такова: в админке есть ссылка: "Перейти к загрузке файлов", при клике по ней открывается модальное окно с формой, которую я указал выше.
Нужно по нажатию на сабмит модальное окно не сбрасывалось и в <div id="bottom_div"> появилось значение $_FILES['add_files']['name']. Аяксом такое не сделать, может быть есть какие-то варианты?
Выбираю файл, жму на сабмит, но в div'е ничего не выводится.
Массив $_FILES пуст, поэтому $_FILES['error'] посмотреть не могу
Да и ещё, с директивами всё норм, каталог tmp существует и к нему открыт полный доступ
 
 Top
fdr21
Отправлено: 20 Июня, 2012 - 09:08:09
Post Id



Гость


Покинул форум
Сообщений всего: 86
Дата рег-ции: Июнь 2012  


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




Ammiak пишет:
кто-нибудь?
Вкратце ситуация такова: в админке есть ссылка: "Перейти к загрузке файлов", при клике по ней открывается модальное окно с формой, которую я указал выше.
Нужно по нажатию на сабмит модальное окно не сбрасывалось и в <div id="bottom_div"> появилось значение $_FILES['add_files']['name']. Аяксом такое не сделать, может быть есть какие-то варианты?
Выбираю файл, жму на сабмит, но в div'е ничего не выводится.
Массив $_FILES пуст, поэтому $_FILES['error'] посмотреть не могу
Да и ещё, с директивами всё норм, каталог tmp существует и к нему открыт полный доступ


По моему у вас ошибка в форме отправке файла попробуйте изменить ее!!!! На
CODE (html):
скопировать код в буфер обмена
  1. <form enctype="multipart/form-data" method="post">

БЕЗ method - да, он по умолчанию устанавливается method="get", файл так отправить не получится!!!
 
 Top
Ammiak
Отправлено: 20 Июня, 2012 - 09:25:58
Post Id


Частый гость


Покинул форум
Сообщений всего: 232
Дата рег-ции: Апр. 2011  


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




Метод указал но без изменений. В принципе, если я создаю отдельный php-файл только с этой формой (вне проекта, просто отдельный файл), то всё работает.
А здесь: жму сабмит, но массив $_FILES так же пуст, как и до выбора файла Огорчение
 
 Top
fdr21
Отправлено: 20 Июня, 2012 - 09:51:55
Post Id



Гость


Покинул форум
Сообщений всего: 86
Дата рег-ции: Июнь 2012  


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




Ammiak пишет:
Метод указал но без изменений. В принципе, если я создаю отдельный php-файл только с этой формой (вне проекта, просто отдельный файл), то всё работает.
А здесь: жму сабмит, но массив $_FILES так же пуст, как и до выбора файла Огорчение


можно поспотреть на исходный HTML код этой формы?!
 
 Top
tuareg
Отправлено: 20 Июня, 2012 - 09:54:22
Post Id


Участник


Покинул форум
Сообщений всего: 1234
Дата рег-ции: Июнь 2010  


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




Просто так не отправить.
Если Вы хотите это сделать без перезагрузки страницы, то создавайте iframe и отправляйте через него.
 
 Top
Ammiak
Отправлено: 20 Июня, 2012 - 19:06:58
Post Id


Частый гость


Покинул форум
Сообщений всего: 232
Дата рег-ции: Апр. 2011  


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




Добавил iframe и указал target формы на него, но видимо не до конца разобрался в $_FILES пустота. Посмотрите плиз что здесь нужно добавить:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <iframe id="rFrame" name="rFrame">  
  3. </iframe>
  4.  
  5. <form enctype="multipart/form-data" method="post" target="rFrame">
  6. <label for="add_files">Добавить файлы:</label><input id="add_files" name="add_files" type="file" />
  7. <input type="submit" value="Ok" />
  8. </form>
  9.  
  10. <div id="bottom_div"><?php print_r($_FILES) ?></div>
  11.  
 
 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