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
Форумы портала PHP.SU :: Версия для печати :: getimagesize() для пустого значении, на лок. сервере видает ошибку, а на хостинге не видает
Форумы портала PHP.SU » » Графика в PHP » getimagesize() для пустого значении, на лок. сервере видает ошибку, а на хостинге не видает

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

1. dadli - 24 Августа, 2011 - 00:57:57 - перейти к сообщению
приветствую

естъ форма для загрузки ижображении на сервере

CODE (html):
скопировать код в буфер обмена
  1. <form action="upload.php" method="post" enctype="multipart/form-data">
  2. <input type="file" name="pic" />
  3. <input type="submit" name="sub" value="загрузитъ" />
  4. </form>


а ето код фаила upload.php:

PHP:
скопировать код в буфер обмена
  1. $pic_info = getimagesize($_FILES['pic']['tmp_name']);




если я не вибираю фаил и так нажму на кнопку "загрузитъ", на странице upload.php видает ошибку:
Цитата:
Warning: getimagesize() [function.getimagesize]: Filename cannot be empty in Z:\home\fotogal.com\www\admin\upload.php on line 1

но ето в том случе, если тестирую на локалном сервере (денвере),
а если на хостинге тестирую - страница upload.php пустая, тоестъ ошибку не видает.
скажите пожалуиста в чом дело?
2. OrmaJever - 24 Августа, 2011 - 01:05:32 - перейти к сообщению
dadli пишет:
а если на хостинге тестирую - страница upload.php пустая, тоестъ ошибку не видает.

потому что на хостинге нужно включить вывод ошибок. Все даные пришедшие от клиента нужно хорошенько проверять.
PHP:
скопировать код в буфер обмена
  1. if(!empty($_FILES['pic']['tmp_name'])) {
  2.   $pic_info = getimagesize($_FILES['pic']['tmp_name']);
  3. }
3. dadli - 24 Августа, 2011 - 01:12:14 - перейти к сообщению
OrmaJever
спасибо, мне просто 4 сообшении нужно еще, чтоб сказатъ "зеленый спасибо" Улыбка
4. Saffoniy - 21 Февраля, 2012 - 08:51:06 - перейти к сообщению
Доброго времени суток,возникла проблема.на сайте имеется формочка для загрузки изображения вот обработчик загрузки картинки.Возникает ошибка
Warning: getimagesize() [function.getimagesize]: Filename cannot be empty in /home/u935505702/public_html/ads /ad_create.php on line 43

Данный тип файла не поддерживается!

Ни как не могу ее исправить уже весь мозг себе сломал,помогите пожалуйста,как исправить данную ошибку*?

PHP:
скопировать код в буфер обмена
  1. if(isset($_POST['upload']))//
  2.                 {
  3.                         /*создаем переменные для загруженного файла из глобального массива FILES*/
  4.                         $upload_img = $_FILES['upload_img']['name'];            
  5.             $file_size = $_FILES['upload_img']['size'];
  6.                         $file_temp = $_FILES['upload_img']['tmp_name'];
  7.                         $file_err = $_FILES['upload_img']['error'];
  8.                         $path = 'upload/adsimg/';
  9.                         // генерация нового имени файла
  10.                         $randomizer = rand(0000, 9999);
  11.                         $file_name = $randomizer.$upload_img;
  12.                         //расчет длины файла
  13.                         $file_type = $upload_img;
  14.                         $file_type_length = strlen($file_type) - 3;
  15.                         $file_type = substr($file_type, $file_type_length);
  16.                         $max_file_size="30720";//максимальный размер файла
  17.                         $fotoksize=round($file_size/10.24)/100;
  18.                         $fotomax=round($max_file_size/10.24)/100;
  19.                         if ($fotoksize>$fotomax) {exit("<p>Вы превысили допустимый размер аватара!<BR><B>Максимально допустимый</B> размер аватара: <B>$fotomax </B>Кб.<BR> <B>Вы пытаетесь</B> загрузить изображение: <B>$fotoksize</B> Кб!</p>");}
  20.                         $size=getimagesize($_FILES['upload_img']['tmp_name']);
  21.                         if ($size[0]>250 or $size[1]>250) {exit("<p>Не допустимые габариты аватара. Допустимо лишь 150 х 150 px!</p>");}
  22.                         $file_type = strtolower($file_type); // преобразуем символы к нижнему регистру
  23.                         /*перечисляем поддерживаемые типы файлов*/
  24.                         $files = array();
  25.                         $files[] = 'jpeg';
  26.                         $files[] = 'jpg';
  27.                         $files[] = 'gif';
  28.                         $files[] = 'png';
  29.                         $key = array_search($file_type, $files);
  30.                         if(!$key)
  31.                         {
  32.                                 echo $upload_img.'<p>Данный тип файла не поддерживается!</p><br />';
  33.                                 exit();
  34.                         }
  35.                         // Проверить на наличие ошибок
  36.                         $error_count = count($file_error);
  37.                         if($error_count > 0)
  38.                         {
  39.                                 for($i = 0; $i <= $error_count; ++$i)
  40.                                 {
  41.                                         echo $_FILES['upload_img']['error'][$i];
  42.                                 }
  43.                         }
  44.                         else //если ошибок нет
  45.                         {
  46.                                 if(!empty($upload_img))//если поле не пустое
  47.                                 {      
  48.                                                 /*проверка существования одноименного файла*/
  49.                                                 if (file_exists("$path/$upload_img")) {exit("<p class='error'>Файл с таким именем уже существует на сервере! Измените имя на другое!<p>");}
  50.                                                 else
  51.                                                 {
  52.                                                         if(move_uploaded_file($file_temp, ''.$path.'' .$file_name.''))//загружаем файл
  53.                                                         {
  54.                                                                 echo '<p>Загрузка аватарки успешно завершена!</p>';
  55.                                                                 echo '<p><b>Информация о загруженном аватаре:</b></p><ul><li>Имя загруженного файла: ' .$upload_img. '</li><li>Новое имя файла: ' .$file_name. '</li><li>Тип файла: ' .$file_type.'</li><li>Размер файла: ' .$file_size. '</li><li>Путь к временному файлу: ' .$file_temp. '</li><li>Ошибок в файле: ' . $file_err. '</li></ul>';
  56.                                                         }
  57.                                                         else{ echo '<h3>Ошибка загрузки!</h3>'; }      
  58.                                                 }
  59.                                 }
5. illy - 21 Февраля, 2012 - 10:32:42 - перейти к сообщению
скопируй фотку куда-нибудь и туда же скрипт

 

Powered by ExBB FM 1.0 RC1