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 :: Ошибка при загрузке картинок [2]

 PHP.SU

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


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

> Без описания
Vlador
Отправлено: 05 Января, 2013 - 21:01:07
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2012  


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




проблему решел, остался еще один вопрос, почему скрипт загружает картинки только в папку в которой лежит сам php файл? А в другие папки на сервере не хочет?

(Отредактировано автором: 05 Января, 2013 - 22:04:05)

 
 Top
vanicon
Отправлено: 05 Января, 2013 - 22:07:52
Post Id



Частый посетитель


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


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




мб права на папку надо установить


-----
Так было, так есть и так будет
 
 Top
Vlador
Отправлено: 05 Января, 2013 - 22:08:24
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2012  


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




а разве в open server нужно права выставлять на папку?
 
 Top
broshurkaplus
Отправлено: 05 Января, 2013 - 22:27:41
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


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




@move_uploaded_file должен туда помещать куда вы указываете путь.
попробуйте относительный путь.
может убрать @ и посмотреть логи ошибок error_log почему не перемещает.

если результат возвращается динамически, посмотреть код элемента, может там innerнtml какую нить ошибку выдает во фрейме/контейнере например пробел стоит или перевод строки, кавычки (у меня такое часто при отладке)

и попробуйте проверять попорядку, если скрипт функцию вызывает, а затем пишет в бд, так меньше скобок и проще разобраться
CODE (htmlphp):
скопировать код в буфер обмена
  1. //загрузился ли файл
  2. if(!is_uploaded_file($tmpfilename)){$prichina="Прозошла ошибка при загрузке файла на сервер.";return false ;}
  3. выводим $prichina
  4. далее проверяем 2 параметр
  5. и тд


тогда отладка проще если не 1 то 2 и тд

и реально должно быть только права и путь
 
 Top
Vlador
Отправлено: 05 Января, 2013 - 22:33:57
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2012  


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




broshurkaplus, решил проблему, помог лог ошибок когда убрал @ .. Спасибо вам!
 
 Top
broshurkaplus
Отправлено: 05 Января, 2013 - 22:41:15
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


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




ну так напишите в чем была ошибка, лог, я ведь, и другие пользователи хотим знать, чтоб не повторять ее.
 
 Top
Vlador
Отправлено: 05 Января, 2013 - 22:50:34
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2012  


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




Ошибка глупая, путь к папке был указан с ошибкой..

Есть еще одна проблема, я когда сохраняю файл то создаю для него специальную папку, дело в том что папка то создается, но ошибочка вылазит Warning: mkdir() File exists in on ... В чем дело может быть?

PHP:
скопировать код в буфер обмена
  1.                         if (($size) && ($size[0] < $max_image_width)
  2.                                 && ($size[1] < $max_image_height)) {
  3.                                         mkdir("W:/domains/sajt.ru/screen/".$id, 777);
  4.                                         $a = uniqid();
  5.                                 if (move_uploaded_file($filename, "W:/domains/sajt.ru/screen/".$id."/".$a.".jpg")) {
  6.                                         echo 'File successful uploaded.';
  7.                                 } else {
  8.                                         echo 'Error: moving fie failed.';
  9.                                 }
  10.                         } else {
  11.                                 echo 'Error: invalid image properties.';
  12.                         }
  13.                 }
  14.         } else {
  15.                 echo "Error: empty file.";
  16.         }}
  17. }

(Добавление)
и еще такой вопрос, я все скриншоты для инет магазина сохряняю в jpg формате как видно из кода, правильно ли это? Или лучше все-таки в оригинальном формате сохранять а имя и расширение вписывать в базу данных?

(Отредактировано автором: 05 Января, 2013 - 22:51:29)

 
 Top
broshurkaplus
Отправлено: 05 Января, 2013 - 23:08:53
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


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




с mkdirами я мало пользуюсь/знаком.
должно ж писать in on ГДЕ в какой строке ошибка

те папка создалась а файл не перемещается? может права не записывает
или после создания/mkdir проверьте папку file_exists($filename)
переведите выдаваемую ошибку сами на русский и понятно станет
(Добавление)
так вы определяйте формат в скрипте по майм типу, подключите пхп 5,3 и пишите имя картинки в базу, какая разница jpg или png, а то вы реально вписываете ".jpg" (если вам только не специально надо jpg)
 
 Top
Vlador
Отправлено: 05 Января, 2013 - 23:14:12
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2012  


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




В том-то и дело что все нормально, папка с id создается затем в нее помещаются фотки, но все-же предупреждение вылазит в переводе на русский "Внимание файл существует в"
 
 Top
broshurkaplus
Отправлено: 05 Января, 2013 - 23:18:32
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


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




так может быть скрипт пытается создать еще папку/файл с таким же именем?
а файлы при загрузке перезаписываются
$id откуда берется? не повторяется?
 
 Top
Vlador
Отправлено: 05 Января, 2013 - 23:22:06
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2012  


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




удалено

(Отредактировано автором: 05 Января, 2013 - 23:48:26)

 
 Top
broshurkaplus
Отправлено: 05 Января, 2013 - 23:30:23
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


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




так это я понял, просто весь скрипт перед глазами не вижу,
откуда он?, может при каждой загрузке гет одинаковый? и пытается создать папку/файл с одинаковым именем, поэтому и пишет что "файл существует"
 
 Top
Vlador
Отправлено: 05 Января, 2013 - 23:48:06
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2012  


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




Все! Оказывается mkdir было в цыкле и выполнялось два раза.. Переместил mkdir вне цыкла и все работает как нужно без косяков! эх учиться мне еще да учиться.. Спасибо за помощь!
(Добавление)
и еще такой вопрос, вот дупустим у меня есть 5 форм для загрузки картинкок (<input name="userfile[]" type="file"><br>), как сделать чтобы не вылазила ошибка "Error: empty file" если допустим нужно только две картинки загрузить?
 
 Top
broshurkaplus
Отправлено: 06 Января, 2013 - 00:13:02
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


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




а зачем именно 5 форм, может 5инпутов в 1й форме...
если сразу 5 инпутов то проверяйте, есть ли файл - если нет грузите то что есть (2из5) а потом пишите - загружено 2 файла
или сделайте 1инпут и кнопку/ссылку, при клике по которой яваскриптом будет добавляться ещё один инпут только если первый заполнен и тд
вообще зачем добавлять по 5 файлов, можно и по 1 скорости это не прибавит. если множественная загрузка, сам такую искал - то флеш, а если для себя. то по фтп грузите.
если требуется обработка, размеры там, ватемарк, и тд, то я гружу там дня 2 по фтп, а потом разбираю то что уже загружено, а для пользователей достаточно по одному. думаю врядли найдется пользователь, который будет сидеть и день грузить вам по 5 картинок (лично у меня таких нет)
 
 Top
Vlador
Отправлено: 06 Января, 2013 - 00:41:32
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2012  


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




Разобрался! спасибо!

(Отредактировано автором: 06 Января, 2013 - 01:10:58)

 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB