PHP $ _FILES dizi boştur

3 Cevap php

Ben bir PHP komut dosyası aracılığıyla yüklenen bir dosyayı almak için çalışıyorum, ama benim $ _FILES dizi hep boş? Dosyası HTML giriş elemanı için benim $ _POST veri girişi Hemen hiçbir dosya benim yerel sistemde oluşturulan ... dosya vardır.

Ben Temp klasörüne yazma erişimi doğrulanmış ve explicity bunu kurdum. Eminim dosya yüklenenler etkin olduğundan emin olmak için () phpinfo kontrol ettik ve onlar.

Bu ne engelliyor olabilir? Şey neden mod_rewrite misiniz?

Teşekkürler!

3 Cevap

Eğer (<form method="post" enctype="multipart/form-data">), daha sonra $ _FILES errno değişkeni kontrol uygun EncType varsa, bir başarısızlık için çeşitli olası nedenleri vardır. Tipik MAX_FILE_SIZE aşılması ediliyor.

http://php.net/manual/en/features.file-upload.errors.php

Since PHP 4.2.0, PHP returns an appropriate error code along with the file array. The error code can be found in the error segment of the file array that is created during the file upload by PHP. In other words, the error might be found in $_FILES['userfile']['error'].

UPLOAD_ERR_OK Value: 0; There is no error, the file uploaded with success.

UPLOAD_ERR_INI_SIZE Value: 1; The uploaded file exceeds the upload_max_filesize directive in php.ini.

UPLOAD_ERR_FORM_SIZE Value: 2; The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.

vb

Eğer formda EncType tanımlıyoruz?

<form method="post" enctype="multipart/form-data">

Eğer set yoksa hiçbir dosya yüklenecektir.

Form doğru EncType var mı?

enctype="multipart/form-data"