2012-05-22 3 views
0

У меня возникла странная проблема с загрузкой файлов с помощью Apache/PHP 5.3 на SLES 11 SP2 Когда я пытаюсь загрузить файл, PHP забирает только исходное имя файла ($_FILES['name']) и не все остальные мне нужны.Проблема с загрузкой файла PHP на SUSE

Я проверил и дважды cheched мой php.ini как для загрузки файла макс, положить максимальный размер, загрузка файлов и т.д. включен

ли кто-нибудь представление о том, что происходит?

Вот сценарий, я использовал, чтобы проверить:

<?php 
if(isset($_FILES)) { 
    var_dump($_FILES); 
} 
?> 
<!-- The data encoding type, enctype, MUST be specified as below --> 
<form enctype="multipart/form-data" action="/" method="POST"> 
    <!-- MAX_FILE_SIZE must precede the file input field --> 
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> 
    <!-- Name of input element determines name in $_FILES array --> 
    Send this file: <input name="userfile" type="file" /> 
    <input type="submit" value="Send File" /> 
</form> 

И это то, что я получаю:

array(1) { ["userfile"]=> array(1) { ["name"]=> string(8) "test.txt" } } 
+1

Все, что я резонно могу предложить перезагрузить сервер и попробуйте еще раз , –

+0

Я пробовал это. Спасибо – Shabbir

+0

Тогда, пожалуйста, проверьте журнал ошибок Apache. –

ответ

0

Может быть проблема написания закачанный файл в директории TMP. Что делает upload_tmp_dir сказать в phpinfo()?

EDIT:

Я вижу Нет Значение для upload_tmp_dir. Он может по умолчанию использовать/tmp, но я бы явно установил его в/tmp в php.ini и установил, что вы правильно установили разрешения. Установка error_reporting на «Вкл.» В сочетании с просмотром ваших журналов Apache поможет в поиске и устранении неисправностей. Так как у вас нет доступа к серверу, вы могли бы попробовать это прямо в PHP скрипт:

ini_set('upload_tmp_dir', '/tmp') 
error_reporting(E_ALL); 
ini_set('display_errors', '1'); 
+0

Upload_tmp_dir говорит '/ tmp' и папка есть. Вот ссылка для phpinfo http://173.14.125.3/sourcefirst/php_info.php – Shabbir

+0

Это результат, который я получаю, когда я печатаю переменную $ _FILE, у меня есть также добавил код, который вы мне отправили Array ([uploaded_cv] => Array ([name] => changes11.doc)) – Shabbir

0

У нас была такая же проблема с PHP загрузки в SLES 11 SP2. В нашем случае предел папки /tmp был максимальным.

Попробуйте команду df -h, чтобы узнать, нужна ли вам какая-либо очистка.

0

У меня была проблема с $ _FILES. Он не загружал файлы.

Я модернизировал компоненты PHP от 5.3.8-0.19.6 до 5.3.8-0.33.2 и работал ...

See this post