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 :: upload изображений

 PHP.SU

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


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

> Описание: Помогите, пожалуйста!
lenarfate
Отправлено: 03 Января, 2010 - 14:58:35
Post Id


Забанен


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


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

[+][+]


помогите!не работает загрузка картинок. ошибок не выдает,ничего не грузит,не пойму в чем дело.заранее спасибо.
вот код вывода и функции загрузки.

PHP:
скопировать код в буфер обмена
  1. if($_GET['action'] == 'new')
  2. {
  3.         include 'templates/form_new.html';
  4.  
  5.         if($ok)
  6.         {
  7.         if(!$title) $errors[] = 'Введите заголовок';
  8.         if(!$news) $errors[] = 'Введите описание новости';
  9.         if(!$userimg) $errors[] = 'Загрузите изображение';
  10.         if($userimg and !upload($_FILES,$url)) $errors[] = 'Ошибка закачки файла';
  11.         if(count($errors) == 0)
  12.         {
  13.             if(upload($_FILES,$url))
  14.             {
  15.                 $img_url = md5(basename($_FILES['userimg']['name']));
  16.             }
  17.  
  18.                 mysql_query('INSERT INTO `'. PREFIX .'table`
  19.                                         SET `title`="'. magic_off($title) .'",
  20.                                         `news`="'. magic_off($news) .'",
  21.                                         `img_url`="'. $img_url .'"');
  22.                 print '<script>document.location.href="index.php"</script>';
  23.         }
  24.         }
  25. }




PHP:
скопировать код в буфер обмена
  1. function upload($_FILES,$url = 'img/',$maxsixe = 1024)
  2. {
  3.         if($_FILES['userimg']['name'] != '')
  4.         {
  5.                 if($_FILES['userimg']['size'] != 0 and $_FILES['userimg']['size'] <= ($maxsize * 1024))
  6.                 {
  7.                         $ext = array('.jpeg','.jpg','.gif');
  8.  
  9.                         if(in_array(strrchr($_FILES['userimg']['name'], '.'), $ext))
  10.                         {
  11.                                 if(is_uploaded_file($_FILES['userimg']['tmp_name']))
  12.                                 {
  13.                                         if(move_uploaded_file($_FILES['userimg']['tmp_name'], $url . md5(basename($_FILES['userimg']['name']))))
  14.                                         {
  15.                                                 return true;
  16.                                         }
  17.                                         else
  18.                                         {
  19.                                                 return false;
  20.                                         }
  21.                                 }
  22.                                 else
  23.                                 {
  24.                                         return false;
  25.                                 }
  26.                         }
  27.             else
  28.             {
  29.                 return false;
  30.             }
  31.                 }
  32.                 else
  33.                 {
  34.                         return false;
  35.                 }
  36.         }
  37.         else
  38.         {
  39.                 return false;
  40.         }
  41. }
 
 Top
Champion Супермодератор
Отправлено: 03 Января, 2010 - 15:05:40
Post Id



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


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


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




 
 Top
lenarfate
Отправлено: 03 Января, 2010 - 15:33:40
Post Id


Забанен


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


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

[+][+]


он постоянно выдает эту ошибку:
if(!$userimg) $errors[] = 'Загрузите изображение';

в $_FILES все записано, а $userimg пустая
 
 Top
Champion Супермодератор
Отправлено: 03 Января, 2010 - 15:46:06
Post Id



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


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


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




Ну и разберись, почему она пустая. Что за $ok, где это всё формируется?
(Добавление)
lenarfate пишет:
upload($_FILES,$url)
Зачем два раза вызывается? Первый раз она вызывается просто чтоб проверить true или false она вернет, потом, кстати тоже...
 
 Top
lenarfate
Отправлено: 03 Января, 2010 - 16:09:10
Post Id


Забанен


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


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

[+][+]


выводится так:
PHP:
скопировать код в буфер обмена
  1. <form method="post" action="?action=new" enctype="multipart/form-data">
  2. Заголовок новости<input type="text" name="title" value="<? print htmlspecialchars($title); ?>" />Описание новости<textarea name="news" cols="35" rows="10" style="overflow:hidden">
  3. <? print htmlspecialchars($news); ?>
  4. </textarea>Загрузить изображение<input type="file" name="userimg" /><input type="submit" name="ok" value="Сохранить" />
  5. </form>
  6. <span style="color:red">
  7. <? print error_info($errors) .'<br />'; ?>
  8. </span>
 
 Top
Champion Супермодератор
Отправлено: 03 Января, 2010 - 16:10:07
Post Id



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


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


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




var_dump($_POST) и делай выводы.
 
 Top
lenarfate
Отправлено: 03 Января, 2010 - 16:10:56
Post Id


Забанен


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


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

[+][+]


делал.
$userimg пуста

не понимаю(голова уже пухнет

(Отредактировано автором: 03 Января, 2010 - 16:23:05)

 
 Top
Champion Супермодератор
Отправлено: 03 Января, 2010 - 17:31:24
Post Id



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


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


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




ну и что ты увидел? Какие выводы сделал?
 
 Top
lenarfate
Отправлено: 03 Января, 2010 - 17:43:22
Post Id


Забанен


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


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

[+][+]


Champion пишет:
var_dump($_POST) и делай выводы.

сделал, там пусто. =(
а если я пытаюсь вывести print_r($_FILES);
то возвращается
Array ( [userimg] => Array ( [name] => aa.jpg [type] => image/jpeg [tmp_name] => Z:\tmp\phpE460.tmp [error] => 0 [size] => 121259 ) )
т.е как будто всё есть.

(Отредактировано автором: 03 Января, 2010 - 17:45:58)

 
 Top
Champion Супермодератор
Отправлено: 03 Января, 2010 - 17:53:03
Post Id



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


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


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




Т.е. сабмит происходит, а POST пустой остается?
 
 Top
lenarfate
Отправлено: 03 Января, 2010 - 17:56:58
Post Id


Забанен


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


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

[+][+]


да
 
 Top
Champion Супермодератор
Отправлено: 03 Января, 2010 - 18:26:30
Post Id



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


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


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




А, ктстати, $ok судя по всему, передается. Значит register_globals включен. Значит вроде бы и $userimg должен быть определен.
(Добавление)
Блин! <input type=file> Где ж ему еще быть кроме как в $_FILES, где она у тебя и есть? В чем проблема-то?
 
 Top
lenarfate
Отправлено: 03 Января, 2010 - 20:41:54
Post Id


Забанен


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


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

[+][+]


бесполезный форум
 
 Top
Champion Супермодератор
Отправлено: 03 Января, 2010 - 20:51:18
Post Id



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


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


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




Забавная реакция, учитывая, что ты получил ответ.
 
 Top
lenarfate
Отправлено: 03 Января, 2010 - 21:14:11
Post Id


Забанен


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


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

[+][+]


тупицы вы.до свиданья
 
 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