trên một trang, tôi có:Cách kiểm tra xem người dùng đã chọn một tệp để tải lên chưa?
if (!empty($_FILES['logo']['name'])) {
$dossier = 'upload/';
$fichier = basename($_FILES['logo']['name']);
$taille_maxi = 100000;
$taille = filesize($_FILES['logo']['tmp_name']);
$extensions = array('.png', '.jpg', '.jpeg');
$extension = strrchr($_FILES['logo']['name'], '.');
if(!in_array($extension, $extensions)) {
$erreur = 'ERROR you must upload the right type';
}
if($taille>$taille_maxi) {
$erreur = 'too heavy';
}
if(!empty($erreur)) {
// ...
}
}
Vấn đề là, nếu người dùng muốn chỉnh sửa thông tin mà không tải LOGO, nó đặt ra một lỗi: 'lỗi bạn phải tải lên đúng loại'
Vì vậy, nếu người dùng không đặt bất kỳ thứ gì vào hộp nhập liệu để tải lên, tôi không muốn nhập trong các điều kiện kiểm tra này.
tôi thử nghiệm: if (!empty($_FILES['logo']['name'])
và if (isset($_FILES['logo']['name'])
nhưng cả hai không có vẻ làm việc.
Bất kỳ ý tưởng nào?
chỉnh sửa: có thể tôi không rõ ràng, tôi không muốn kiểm tra xem anh ấy đã tải lên biểu trưng hay không, tôi muốn kiểm tra NẾU anh ấy đã chọn tệp để tải lên, bởi vì ngay bây giờ, nếu anh ấy không chọn tập tin để tải lên, php nêu ra một lỗi nói với anh ta phải tải lên với định dạng đúng.
cảm ơn.
Vui lòng xem câu trả lời dưới đây http://stackoverflow.com/a/2958221/84292 –
đó là những gì tôi đang tìm kiếm. cảm ơn ... +1 cho cả câu hỏi và câu trả lời. (y) –