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 Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
gregst
Отправлено: 14 Августа, 2014 - 10:39:57
Post Id


Новичок


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


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




Добрый день.

Пишу я значит следующее:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $path=mkdir('123');
  4. $subdir=mkdir('123/preview');
  5. if($_FILES["filename"]["size"] > 1024*1*1024)
  6. {
  7.                 echo ("Размер файла превышает один мегабайт. Фото #1 не прикреплено. Объявление отправлено на премодерацию без фото <br />");
  8.      exit;
  9. }
  10.   if(is_uploaded_file($_FILES["filename"]["tmp_name"]))
  11. {
  12.      // Если файл загружен успешно, перемещаем его
  13.      // из временной директории в конечную
  14.            move_uploaded_file($_FILES["filename"]["tmp_name"], "123/".$_FILES["filename"]["name"]);
  15.  
  16. }
  17.         else
  18. {
  19.       echo("Фото #1 не прикреплено.<br />");
  20. }
  21.  
  22.  
  23.  
  24.  
  25. $slides = glob($path."/*.{jpg,png,gif}", GLOB_BRACE);
  26.         if(count($slides) != 0 )
  27.                 {
  28.                         foreach($slides as $slide)
  29.                                 {
  30.                                 $source_src = $slide;
  31.                                 $source = imagecreatefromjpeg($source_src);
  32.                                 $params = getimagesize($source_src);
  33.                                 $max_size = 60;
  34.                                 $resource_width = 100;
  35.                                 $resource_height = 100;
  36.                                 $resource = imagecreatetruecolor($resource_width, $resource_height);
  37.                                 imagecopyresampled($resource, $source, 0, 0, 0, 0,$resource_width, $resource_height, $params[0], $params[1]);
  38.                                 $resource_src = 'preview/.$slide';
  39.                                 imagejpeg($resource, $resource_src);
  40.                                 }
  41.                 }
  42. ?>


Идея такая - на странице есть форма, через нее создается папка (123 для примера), внутри нее еще одна (preview) , в первую загружаются фотографии (в примере одна)

По идее, должна создаваться маленькая копия загруженной фотографии и сохраняться с исходным именем в папку preview


Понимаю, что есть ошибка, но никак не пойму где

Очень прошу помощи, заранее всем спасибо!
 
 Top
tato
Отправлено: 14 Августа, 2014 - 10:51:06
Post Id



Посетитель


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


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




Какие ошибки возникают? Директория не создается? Картинка не загружается? Обе не грузятся?

Подробности проблеммы в студию!


-----
просто ?: сложно
 
 Top
gregst
Отправлено: 14 Августа, 2014 - 10:53:32
Post Id


Новичок


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


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




tato пишет:
Какие ошибки возникают? Директория не создается? Картинка не загружается? Обе не грузятся?

Подробности проблеммы в студию!


директории обе создаются, картинка грузится

Не создается уменьшенная копия в заданной директории
 
 Top
tato
Отправлено: 14 Августа, 2014 - 10:56:15
Post Id



Посетитель


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


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




Лог ошибок смотрели? Тип картинки точно jpg?
(Добавление)


glob файлы находит?


-----
просто ?: сложно
 
 Top
gregst
Отправлено: 14 Августа, 2014 - 11:00:31
Post Id


Новичок


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


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




tato пишет:
Лог ошибок смотрели? Тип картинки точно jpg?
(Добавление)


glob файлы находит?




картинки точно jpg

про остальное хз, даже не знаю как проверить
 
 Top
RickMan
Отправлено: 14 Августа, 2014 - 11:15:02
Post Id


Участник


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


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




Права на запись во вторую папку есть? Смотрите что лог php говорит... думаю если ошибка есть то она именно там.
http://stackoverflow[dot]com/questio[dot][dot][dot]re-the-error-log - как найти логи php

(Отредактировано автором: 14 Августа, 2014 - 11:15:34)

 
 Top
gregst
Отправлено: 14 Августа, 2014 - 11:58:32
Post Id


Новичок


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


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




логи пустые, ошибок нет
 
 Top
esterio
Отправлено: 14 Августа, 2014 - 12:04:39
Post Id



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


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


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




gregst пишет:
даже не знаю как проверить

http://phpfaq[dot]ru/debug - нужно значить учить дебажыть. без этого никуда в программировании
 
 Top
gregst
Отправлено: 14 Августа, 2014 - 12:13:22
Post Id


Новичок


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


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




esterio пишет:
gregst пишет:
даже не знаю как проверить

http://phpfaq[dot]ru/debug - нужно значить учить дебажыть. без этого никуда в программировании




все равно ничего - после нажатия кнопки ошибка, что папки уже созданы, но это понятно, больше ошибок нет
 
 Top
RickMan
Отправлено: 14 Августа, 2014 - 12:15:30
Post Id


Участник


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


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




А вам не кажется, что как минимум эту ошибку исправить надо? Глупо же создавать дирректорию которая уже есть.
http://www.php.su/is_dir
 
 Top
Sail
Отправлено: 14 Августа, 2014 - 12:42:39
Post Id



Участник


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


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




gregst пишет:
PHP:
скопировать код в буфер обмена
  1. $resource_src = 'preview/.$slide';

Вот где @ порылась Закатив глазки
PHP:
скопировать код в буфер обмена
  1. $resource_src = 'preview/'.$slide;

или как-то ещё... в зависимости от содержимого $slide

(Отредактировано автором: 14 Августа, 2014 - 12:44:43)

 
 Top
gregst
Отправлено: 14 Августа, 2014 - 13:27:13
Post Id


Новичок


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


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




Sail пишет:
gregst пишет:
PHP:
скопировать код в буфер обмена
  1. $resource_src = 'preview/.$slide';

Вот где @ порылась Закатив глазки
PHP:
скопировать код в буфер обмена
  1. $resource_src = 'preview/'.$slide;

или как-то ещё... в зависимости от содержимого $slide



фиг там, все равно не ресайзится фото и не грузится в нужную папку
 
 Top
Sail
Отправлено: 14 Августа, 2014 - 13:40:00
Post Id



Участник


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


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




gregst пишет:
все равно не ресайзится фото и не грузится в нужную папку

Ещё "странности":
PHP:
скопировать код в буфер обмена
  1. $path=mkdir('123');
  2. $subdir=mkdir('123/preview');
  3. ...
  4. $slides = glob($path."/*.{jpg,png,gif}", GLOB_BRACE);

Покликайте по ссылкам-описаниям функций...
 
 Top
gregst
Отправлено: 14 Августа, 2014 - 14:21:12
Post Id


Новичок


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


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




Sail пишет:
gregst пишет:
все равно не ресайзится фото и не грузится в нужную папку

Ещё "странности":
PHP:
скопировать код в буфер обмена
  1. $path=mkdir('123');
  2. $subdir=mkdir('123/preview');
  3. ...
  4. $slides = glob($path."/*.{jpg,png,gif}", GLOB_BRACE);

Покликайте по ссылкам-описаниям функций...


что конкретно имеется ввиду? почитал описание и глаз ни за что не зацепился
 
 Top
Sail
Отправлено: 14 Августа, 2014 - 14:59:50
Post Id



Участник


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


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




gregst пишет:
почитал описание и глаз ни за что не зацепился

Что возвращает функция mkdir?
Для чего используется $path далее?
Что после всего этого оказывается в $slides?
И сравните с названием каталога, в который копируете файлы из временной директории.
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB