SORU
25 Ocak 2010, PAZARTESİ


Nasıl incelikle PHP'un aşan dosyalar `post_max_size`işlemek için?

Bir e-posta için bir dosya ekler PHP bir form üzerinde çalışıyorum, ve incelikle yüklenen dosya çok büyük olduğu durumlarda işlemek için çalışıyor.

Dosya upload maxiumum boyutunu etkileyen php.ini iki ayar olduğunu öğrendim: upload_max_filesize post_max_size.

Eğer bir dosyanın boyutu aşarsa upload_max-filesize, PHP 0 olarak dosyanın boyutunu verir. Sorun değil; bunun için kontrol edebilirim.

Ama eğer post_max_size, senaryoyu ben aşarsa sessizce başarısız olur ve geri boş bir form için de geçerli.

Bu hata yakalamak için bir yolu var mı?

CEVAP
25 Ocak 2010, PAZARTESİ


http://ca2.php.net/manual/en/ini.core.php#ini.post-max-size

Eğer post data boyutu büyük ise post_max_size,$_POST ve $_FİLES superglobals boş. Bu çeşitli şekillerde, örneğin izlenebilir bu $_GET değişkeni geçerek komut işleme veri, yani , sonra $_GET olmadığını kontrol etme [''] işlenir ayarlayın.

Bu yüzden ne yazık ki, PHP gibi görünmüyor gönderir bir hata. Ve $_POST dizi boş am gönderir beri, senaryo boş form bir YAZI olduğunu düşünüyorum yok olacak olmasıdır. (Çok kötü bir tasarım kararı IMHO)

This commenter da ilginç bir fikri var.

Daha şık bir yol gibi görünüyor post_max_size arasında karşılaştırma $_SERVER [''] CONTENT_LENGTH. Lütfen ikincisi sadece içerir unutmayın yüklenen dosya boyutu artı yazılan veri ama aynı zamanda çok parçalı dizileri.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MisterBrightside

    MisterBright

    24 Mart 2006
  • Phymec

    Phymec

    18 Temmuz 2009
  • TheScorpioTechno

    TheScorpioTe

    15 Aralık 2010