[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Настройка сервера
rodzewich
Использую:
- centos 5.2
- apache 2.2.3
- php 5.1.6

Проблема такая:
Не могу добится того, чтобы файлы нормально аплоадились.

Некоторые настройки php.ini:

Код

; Maximum size of POST data that PHP will accept.
post_max_size = 200M

; Whether to allow HTTP file uploads.
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
upload_tmp_dir = /tmp/php/upload

; Maximum allowed size for uploaded files.
upload_max_filesize = 200M


Права на upload_tmp_dir выставлены в 777.

После аплоада массив $_FILES говорит, что всё круто, и tmp данные лежат в нужной директории, но по факту временных файлов нет.

Сломал голову ковыряя настройки. Помогите разобраться.



Спустя 6 минут, 14 секунд (10.03.2009 - 19:11) waldicom написал(а):
Настораживает вот это:
Цитата
После аплоада массив $_FILES говорит, что всё круто, и tmp данные лежат в нужной директории, но по факту временных файлов нет.

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

Спустя 5 минут, 59 секунд (10.03.2009 - 19:17) rodzewich написал(а):
Нет, файлики проверяютяс через is_file - ответ отрицательный.

Спустя 23 секунды (10.03.2009 - 19:17) Viking написал(а):
не проверял, но вроде слышал, что они после закрытия сеанса сразу стераются из временной директории, move_uploaded_file() сразу пробовал делать?

Спустя 42 секунды (10.03.2009 - 19:18) Viking написал(а):
Цитата
Нет, файлики проверяютяс через is_file - ответ отрицательный.

именно в том же скрипте?

Спустя 10 минут, 52 секунды (10.03.2009 - 19:29) rodzewich написал(а):
В томже скрипте сделал вот это -
PHP
$files=scandir('/tmp/php/upload');
print_r($files);
foreach(
$files as $dir){
    if(
$dir!='.'&&$dir!='..'){
        echo 
"/tmp/php/upload/{$dir}";
        
print_r(scandir("/tmp/php/upload/{$dir}"));
    }
}


вот результат -
Код

Array
(
   [0] => .
   [1] => ..
   [2] => php3xpakx
   [3] => phpEYERYS
   [4] => phpLdDoHb
)
/tmp/php/upload/php3xpakx<br />
<b>Warning</b>:  scandir(/tmp/php/upload/php3xpakx) [<a href='function.scandir'>function.scandir</a>]: failed to open dir: Not a directory in <b>/var/www/ballito.ru/index.php</b> on line <b>538</b><br />
<br />
<b>Warning</b>:  scandir() [<a href='function.scandir'>function.scandir</a>]: (errno 20): Not a directory in <b>/var/www/ballito.ru/index.php</b> on line <b>538</b><br />

/tmp/php/upload/phpEYERYS<br />
<b>Warning</b>:  scandir(/tmp/php/upload/phpEYERYS) [<a href='function.scandir'>function.scandir</a>]: failed to open dir: Not a directory in <b>/var/www/ballito.ru/index.php</b> on line <b>538</b><br />
<br />
<b>Warning</b>:  scandir() [<a href='function.scandir'>function.scandir</a>]: (errno 20): Not a directory in <b>/var/www/ballito.ru/index.php</b> on line <b>538</b><br />

/tmp/php/upload/phpLdDoHb<br />
<b>Warning</b>:  scandir(/tmp/php/upload/phpLdDoHb) [<a href='function.scandir'>function.scandir</a>]: failed to open dir: Not a directory in <b>/var/www/ballito.ru/index.php</b> on line <b>538</b><br />
<br />
<b>Warning</b>:  scandir() [<a href='function.scandir'>function.scandir</a>]: (errno 20): Not a directory in <b>/var/www/ballito.ru/index.php</b> on line <b>538</b><br />


Такое ощущение, что нехватает прав на поддиректории ... ohmy.gif

Спустя 8 минут, 39 секунд (10.03.2009 - 19:38) rodzewich написал(а):
Вот массивчик $_FILES -

Код

Array
(
   [module_lots_property] => Array
       (
           [name] => Array
               (
                   [contract_tmpl] =>
                   [photos] => Array
                       (
                           [0] =>
                           [1] => zima.jpg
                           [2] => zakat.jpg
                           [3] => greentiket.jpg
                       )
               )
           [type] => Array
               (
                   [contract_tmpl] =>
                   [photos] => Array
                       (
                           [0] =>
                           [1] => image/jpeg
                           [2] => image/jpeg
                           [3] => image/jpeg
                       )
               )
           [tmp_name] => Array
               (
                   [contract_tmpl] =>
                   [photos] => Array
                       (
                           [0] =>
                           [1] => /tmp/php/upload/phpQkzJwE
                           [2] => /tmp/php/upload/phpBbiliJ
                           [3] => /tmp/php/upload/phpcqua8N
                       )
               )
           [error] => Array
               (
                   [contract_tmpl] => 4
                   [photos] => Array
                       (
                           [0] => 4
                           [1] => 0
                           [2] => 0
                           [3] => 0
                       )
               )
           [size] => Array
               (
                   [contract_tmpl] => 0
                   [photos] => Array
                       (
                           [0] => 0
                           [1] => 105542
                           [2] => 71189
                           [3] => 83794
                       )
               )
       )
)

Спустя 10 минут, 35 секунд (10.03.2009 - 19:48) waldicom написал(а):
Цитата
В томже скрипте сделал вот это - и результат:
    [0] => .
    [1] => ..
    [2] => php3xpakx
    [3] => phpEYERYS
    [4] => phpLdDoHb


Ну, так вот же эти три файла, которые ты заливаешь...
Видимо ты из не копируешь никуда..
Используй функцию move_uploaded_file() для каждого загруженного файла

Спустя 4 минуты, 22 секунды (10.03.2009 - 19:53) Viking написал(а):
Цитата
echo "/tmp/php/upload/{$dir}";

дык тыж тут делаешь скандир для файла, у тебя же "/tmp/php/upload/{$dir}" это файл полученный предыдущим скандиром

Спустя 2 минуты, 9 секунд (10.03.2009 - 19:55) Viking написал(а):
Цитата
Цитата
В томже скрипте сделал вот это - и результат:
[0] => .
[1] => ..
[2] => php3xpakx
[3] => phpEYERYS
[4] => phpLdDoHb



Ну, так вот же эти три файла, которые ты заливаешь...
Видимо ты из не копируешь никуда..
Используй функцию move_uploaded_file() для каждого загруженного файла

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

Спустя 5 минут, 52 секунды (10.03.2009 - 20:01) rodzewich написал(а):
Попробовал, так и есть ...
Думал, что в названиях временных файлов есть какаято смысловая нагрузка, а полученные названия из FILES - это временные директории , где хранится каждый файл. Поэтому и делал scandir.
Спасибо что помогли разобраться. huh.gif

Спустя 6 дней, 23 часа, 9 минут, 14 секунд (17.03.2009 - 19:10) Guest написал(а):
ебанько ph34r.gif

Спустя 1 час, 23 минуты, 11 секунд (17.03.2009 - 20:33) Sylex написал(а):
biggrin.gif


_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.