Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Большие фотки не грузятся на сервак
 
 автор: SilentChild   (05.06.2008 в 11:12)   письмо автору
 
 

Загружаю через форму фотографии размером больше (примерно) Мегабайта и фотка не грузится, а меньше грузится!

В чем дело? Может гдето ограничение размера стоит? Если да то где?

   
 
 автор: t3ma   (05.06.2008 в 11:33)   письмо автору
 
   для: SilentChild   (05.06.2008 в 11:12)
 

Возможно стоит ограничение на время выполнения скрипта.
Попробуйте добавить строчку:


<?php
set_time_limit
(0);
?>  

   
 
 автор: Zend72   (05.06.2008 в 11:38)   письмо автору
 
   для: SilentChild   (05.06.2008 в 11:12)
 

Возможно ограничение размера, это ограничение прописано в файле php.ini врят ли хостер даст вам право убрать это ограничение, а если скрипт завершается с ошибкой смысл которой "Время истекло..." то следует увеличить время в течение которого скрипт может выполняться. Это скорее всего вы сможете сделать конечно если хостер не запретил использовать эту функцию...

   
 
 автор: SilentChild   (05.06.2008 в 12:01)   письмо автору
 
   для: Zend72   (05.06.2008 в 11:38)
 

Форма для отправки фоток:


<form method="POST" action="upload7.php" enctype='multipart/form-data'>
    <input type="file" name="userfile">
    <input type="submit" value="Загрузить">
    <input type="hidden" value="posted">
</form>


Обработчик данных формы:


<?php
$filename 
basename($_FILES['userfile']['name']);
$move move_uploaded_file($_FILES['userfile']['tmp_name'], "./catalog/"$filename);
if(!
move)
{
    echo 
"Файл " $filename " не загружен!";    
}
else 
{
    echo 
"Файл " $filename " успешно загружен!";
}
?>


Выводит второе сообщение хотя фотографии в папке "catalog" не появляется, если бы ограничение стояло я думаю он бы выдал первое сообщение или я ошибаюсь?

   
 
 автор: AcidTrash   (05.06.2008 в 12:09)   письмо автору
 
   для: SilentChild   (05.06.2008 в 12:01)
 

>if(!move)
Это опечатка или что?
Здесь скорее всего дело именно в php.ini, дериктива upload_max_filesize. Увеличьте ее значение, если сервер ваш.

   
 
 автор: Zend72   (05.06.2008 в 12:11)   письмо автору
 
   для: SilentChild   (05.06.2008 в 12:01)
 

А если вот так что он выдаст?

<?php 
  $filename 
basename($_FILES['userfile']['name']); 
  
$move move_uploaded_file($_FILES['userfile']['tmp_name'], "./catalog/"$filename); 
  if(
move
  { 
      echo 
"Файл " $filename " не загружен!";     
  } 
  else  
  { 
      echo 
"Файл " $filename " успешно загружен!"
  } 
?>

   
 
 автор: Zend72   (05.06.2008 в 12:12)   письмо автору
 
   для: Zend72   (05.06.2008 в 12:11)
 

Об одном и том же подумали )))))))))))))

   
 
 автор: AcidTrash   (05.06.2008 в 12:17)   письмо автору
 
   для: Zend72   (05.06.2008 в 12:12)
 

Нет не об одном и том же.
Я имел ввиду ошибку синтаксиса if(!move). Что такое move - переменная? Тогда уж должно быть $move.

   
 
 автор: Zend72   (05.06.2008 в 12:20)   письмо автору
 
   для: AcidTrash   (05.06.2008 в 12:17)
 

Яж тоже восклицательный знак убрал ))

   
 
 автор: Zend72   (05.06.2008 в 12:21)   письмо автору
 
   для: Zend72   (05.06.2008 в 12:20)
 

Невнимательность меня погубит....

   
 
 автор: mihdan   (05.06.2008 в 12:25)   письмо автору
 
   для: SilentChild   (05.06.2008 в 11:12)
 

.htaccess

# Корректируем настройки php.ini
php_value "upload_max_filesize" "15M"
php_value "post_max_size" "15M"
php_value "memory_limit" "32M"

   
 
 автор: sim5   (05.06.2008 в 12:28)   письмо автору
 
   для: mihdan   (05.06.2008 в 12:25)
 

Вы думаете это все позволяют делать?

   
 
 автор: mihdan   (05.06.2008 в 12:31)   письмо автору
 
   для: sim5   (05.06.2008 в 12:28)
 

На бесплатном точно нет, на своем пожалуйста. Сам не раз делал на своих серверах

   
 
 автор: AcidTrash   (05.06.2008 в 12:30)   письмо автору
 
   для: mihdan   (05.06.2008 в 12:25)
 

Думаю из htaccess это не прокатит.

   
 
 автор: mihdan   (05.06.2008 в 12:31)   письмо автору
 
   для: AcidTrash   (05.06.2008 в 12:30)
 

Прокатит, если это позволено)))

   
 
 автор: AcidTrash   (05.06.2008 в 12:40)   письмо автору
 
   для: mihdan   (05.06.2008 в 12:31)
 

>если это позволено
Это я имел ввиду, но хостинги очень часто хорошо ограничивают использование .htaccess.
На счет конкретно php, вам этого сделать не дадут, т.к. на одном сервере может крутиться не только ваш сайт. Вас новые настройки устраивают, а других нет.
Если уж так колется поменять настройки php, то предлагают возможность создать свой бинарник и использовать его в cgi-режиме.

>Сам не раз делал на своих серверах
У вас colocation ?

   
 
 автор: SilentChild   (05.06.2008 в 12:37)   письмо автору
 
   для: mihdan   (05.06.2008 в 12:25)
 

>if(!move)
Это опечатка, ваще чет невнимателен, ну да ладно работает теперь только фото не загружает попробую ограничение размера сделать!

Если я хочу сделать размер загружаемого файла не более 300 Кбайт мне нужно в сравнении писать так?:

$userfile_size = $_FILES['userfile']['size'];
if($userfile_size > (300 * 1024 * 8))
{
    echo "Файл превышает допустимый размер";  
}
else
{
    echo "Грузим фотку на сервак";
}


С сервером вопрос понятен, доступ к нему есть но смысл был не в этом, смысл был узнать где стоит ограничение, по идее мне надо теперь ограничить размер загр. файла и узнать в чем сравнивать в битах или еще в чем-то?

   
 
 автор: sim5   (05.06.2008 в 13:53)   письмо автору
 
   для: SilentChild   (05.06.2008 в 12:37)
 

$_FILES['userfile']['size'] - показывает размер в байтах, следовательно, разделив его на 1024, узнаете размер в КБ.

   
 
 автор: SiM(R)   (05.06.2008 в 14:25)   письмо автору
 
   для: sim5   (05.06.2008 в 13:53)
 

Почему бы не спросить все у хостера? Стоит ли ограничение? На сколько? Работает ли .htaccess?

   
 
 автор: mihdan   (05.06.2008 в 12:39)   письмо автору
 
   для: SilentChild   (05.06.2008 в 11:12)
 

http://phpclub.ru/faq/UploadOfLargeFiles

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования