Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menyelesaikan Isu Muat Naik Fail dalam PHP Menggunakan $_FILES?

Bagaimana untuk Menyelesaikan Isu Muat Naik Fail dalam PHP Menggunakan $_FILES?

Linda Hamilton
Linda Hamiltonasal
2024-11-29 22:36:10638semak imbas

How to Solve File Upload Issues in PHP Using $_FILES?

Memuat Naik Fail dengan PHP

Panduan ini menunjukkan cara memuat naik fail dalam PHP, menangani ralat biasa yang dihadapi dalam pendekatan sebelumnya.

Masalah:

Apabila cuba memuat naik fail ke folder yang ditentukan, ralat timbul disebabkan penggunaan pembolehubah HTTP_POST_FILES yang telah ditamatkan.

Penyelesaian:

Kod PHP berikut menyediakan penyelesaian yang dimodenkan dan dikemas kini untuk fail memuat naik:

$target_dir = "upload/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$imageFileType = strtolower(pathinfo($target_file, PATHINFO_EXTENSION));
$allowedTypes = ['jpg', 'png'];

if (isset($_POST["submit"])) {
    // Check file type
    if (!in_array($imageFileType, $allowedTypes)) {
        $msg = "Type is not allowed";
    }
    // Check if file already exists
    elseif (file_exists($target_file)) {
        $msg = "Sorry, file already exists.";
    }
    // Check file size
    elseif ($_FILES["fileToUpload"]["size"] > 5000000) {
        $msg = "Sorry, your file is too large.";
    }
    elseif (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        $msg = "The file " . basename($_FILES["fileToUpload"]["name"]) . " has been uploaded.";
    }
}

Penjelasan:

  • $_FILES["fileToUpload"] mendapatkan semula maklumat muat naik fail.
  • $target_dir menentukan folder destinasi.
  • Pernyataan bersyarat menyemak jenis fail, kewujudan dan saiz.
  • move_uploaded_file() mengalihkan fail ke lokasi yang ditentukan.
  • Pembolehubah $msg menyimpan mesej berdasarkan status muat naik.

HTML Kod untuk Memuat Naik:

<form action="upload.php" method="post">

Menggunakan kod yang dikemas kini ini, anda boleh berjaya muat naik fail ke folder yang anda inginkan dan kendalikan ralat pengesahan dengan sewajarnya.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Isu Muat Naik Fail dalam PHP Menggunakan $_FILES?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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