Các tệp được tải lên bằng biểu mẫu trong yêu cầu POST có thể được truy xuất bằng phương thức getUploadedFiles của đối tượng Request
Khi tải tệp lên bằng yêu cầu POST, hãy đảm bảo rằng biểu mẫu tải tệp lên của bạn có thuộc tính enctype="multipart/form-data" nếu không thì getUploadedFiles() sẽ trả về một mảng trống
Nếu nhiều tệp được tải lên cho cùng một tên đầu vào, hãy thêm dấu ngoặc vuông sau tên đầu vào trong HTML, nếu không, chỉ một tệp đã tải lên sẽ được trả về cho tên đầu vào trước getUploadedFiles()
Dưới đây là một biểu mẫu HTML mẫu chứa cả tải lên một và nhiều tệp
Add file (single):
Add files (up to 2):
Add files (multiple):
Hình 1. Mẫu HTML ví dụ để tải lên tệp
Các tệp đã tải lên có thể được chuyển đến một thư mục bằng phương pháp moveTo. Dưới đây là một ứng dụng ví dụ xử lý các tệp đã tải lên của mẫu HTML ở trên
Ghi chú. Bạn sẽ cần tạo một thư mục mới có tên "tải lên" trong thư mục chứa "tải lên. php" cư trú. Các tệp đã tải lên sẽ được lưu ở đó
Kiểm tra xem tệp đã tồn tại chưa
Bây giờ chúng ta có thể thêm một số hạn chế
Đầu tiên, chúng tôi sẽ kiểm tra xem tệp đã tồn tại trong thư mục "tải lên" chưa. Nếu có, thông báo lỗi sẽ hiển thị và $uploadOk được đặt thành 0
// Kiểm tra xem tệp đã tồn tại chưa
if (file_exists($target_file)) {
echo "Xin lỗi, tệp đã tồn tại. ";
$uploadOk = 0;
}
Kích thước tệp giới hạn
Trường nhập tệp trong biểu mẫu HTML của chúng tôi ở trên được đặt tên là "fileToUpload"
Bây giờ, chúng tôi muốn kiểm tra kích thước của tệp. Nếu tệp lớn hơn 500KB, thông báo lỗi sẽ hiển thị và $uploadOk được đặt thành 0
// Kiểm tra kích thước tệp
if ($_FILES["fileToUpload"]["size"] > 500000) {
echo "Xin lỗi, . ";
$uploadOk = 0;
}
Loại tệp giới hạn
Đoạn mã dưới đây chỉ cho phép người dùng tải lên các tệp JPG, JPEG, PNG và GIF. Tất cả các loại tệp khác đưa ra thông báo lỗi trước khi đặt $uploadOk thành 0
/**
* This function moves the archives and directoryes of a directory of
* origin for a directory destination being able replace them or not.
**/
________số 8
if ($oldDir == $newDir) {
trigger_error("Destination directory is equal of origin.");
return false;
}
getUploadedFiles0
getUploadedFiles1
getUploadedFiles2
getUploadedFiles3
getUploadedFiles4
getUploadedFiles5
getUploadedFiles6
function mvdir($oldDir, $newDir, $replaceFiles = true) {0
function mvdir($oldDir, $newDir, $replaceFiles = true) {1
function mvdir($oldDir, $newDir, $replaceFiles = true) {2
function mvdir($oldDir, $newDir, $replaceFiles = true) {3
function mvdir($oldDir, $newDir, $replaceFiles = true) {4
function mvdir($oldDir, $newDir, $replaceFiles = true) {5
function mvdir($oldDir, $newDir, $replaceFiles = true) {6
function mvdir($oldDir, $newDir, $replaceFiles = true) {7
function mvdir($oldDir, $newDir, $replaceFiles = true) {8
Request6
Request7
Request8
Request9
enctype="multipart/form-data"0
enctype="multipart/form-data"1
enctype="multipart/form-data"2
enctype="multipart/form-data"3
enctype="multipart/form-data"4