Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mengehadkan Jenis Fail dengan Selamat dalam Muat Naik Fail PHP?

Bagaimana untuk Mengehadkan Jenis Fail dengan Selamat dalam Muat Naik Fail PHP?

DDD
Lepaskan: 2024-11-03 03:13:02
asal
513 orang telah melayarinya

How to Securely Restrict File Types in PHP File Uploads?

Muat Naik Fail PHP: Mengehadkan Jenis Fail

Apabila mengendalikan muat naik fail, adalah penting untuk mengesahkan jenis dan saiz fail yang dimuat naik untuk memastikan keselamatan dan mengekalkan fungsi yang dimaksudkan. Kod yang disediakan bertujuan untuk berbuat demikian dengan menyemak sambungan fail, jenis dan saiz. Walau bagaimanapun, ia mempunyai beberapa isu.

Isu dengan Kod Asal:

  • Tidak menguatkuasakan jenis fail; ia membenarkan fail dengan sambungan yang tidak dibenarkan (cth., TXT).
  • Tidak menyemak saiz fail dengan betul.

Penyelesaian:

Untuk menangani isu ini, kami boleh menggunakan jenis mime untuk pengesahan fail dan semakan berasingan untuk had saiz.

Kod Kemas Kini:

<code class="php">function allowed_file() {
  // Allowed mime types
  $allowed = array('application/doc', 'application/pdf', 'another/type');

  // Validate file type using mime type
  if (in_array($_FILES['resume']['type'], $allowed) && in_array($_FILES['reference']['type'], $allowed)) {

    // Validate file size
    if ($_FILES["resume"]["size"] < 400000 && $_FILES["reference"]["size"] < 400000) {

      // Files are allowed; proceed with upload process...
    }
  }
}</code>
Salin selepas log masuk

Penjelasan :

  • Kami mentakrifkan tatasusunan jenis mim yang dibenarkan.
  • Untuk setiap fail yang dimuat naik, kami menyemak sama ada jenis mimenya berada dalam tatasusunan yang dibenarkan.
  • Selepas mengesahkan jenis fail, kami melakukan semakan saiz untuk memastikan ia berada di bawah had yang ditentukan.
  • Jika semua pengesahan lulus, kami boleh meneruskan proses muat naik fail, seperti berpindah ke destinasi yang diingini.

Atas ialah kandungan terperinci Bagaimana untuk Mengehadkan Jenis Fail dengan Selamat dalam Muat Naik Fail PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan