Php getimagesize tệp đã tải lên

Có một số kiểm tra nữa mà chúng tôi cần thực hiện để củng cố việc gửi biểu mẫu của mình. Bạn không bao giờ có thể quá cẩn thận, đặc biệt là khi cho phép người khác tải tệp lên máy chủ của mình. Tôi khuyên bạn nên sử dụng gói PHP đã thử và kiểm tra, nhưng chúng tôi đang tìm hiểu cách thức hoạt động của các công cụ ở đây nên chúng tôi sẽ tự mình thực hiện thêm một số thử nghiệm

Tôi có một biểu mẫu cho phép tải lên. khi tôi cố tải lên một hình ảnh tôi nhận được

Try again '; // if everything is ok, try to upload file } else { if [move_uploaded_file[$_FILES["upload"]["tmp_name"], $target_file]] { echo "

Image,

"; } else { echo '
Sorry, there was an error uploading your file.
'; } }

Tôi thấy lỗi của mình bây giờ, > nên là < trong nếu

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

Khi bạn tạo biểu mẫu thông tin giao diện người dùng, bạn có thể cần lưu ảnh hồ sơ trên cơ sở dữ liệu để sử dụng tiếp. Trong bài viết này, tôi sẽ chỉ cho bạn cách lấy các thuộc tính của hình ảnh đã tải lên – tên, tên tạm thời, kích thước, chiều rộng, chiều cao và phần mở rộng – trong PHP

Mã số

Nếu biểu mẫu được gửi, hãy lấy thuộc tính tệp đã tải lên

Nếu tên của tệp đã tải lên không trống, hãy lưu các thuộc tính trong một mảng kết hợp có tên img

Để lấy chiều rộng và chiều cao của tệp [hình ảnh] đã tải lên, hãy sử dụng phương thức @getimagesize như được mô tả trong mã bên dưới

Để có phần mở rộng của tệp [hình ảnh] đã tải lên, hãy sử dụng dòng này – pathinfo[$image["name"], PATHINFO_EXTENSION]

Tôi đang làm việc trên nhiều tệp tải lên và cách lấy chiều cao và chiều rộng của từng hình ảnh để biết liệu kích thước của chúng có phù hợp với chiều cao và chiều rộng cho phép hay không [500 x 500]

của tôi [php]đầu ra tiếng vang gấp 3 lần chiều rộng của tệp[/php]… thay vì 1…nó giống như một vòng lặp.

Tôi đã thử nhưng nó không hoạt động theo cách tôi muốn…ai đó có thể giúp tôi không?

Mã của tôi ĐÂY
[php]

Télécharger le ou les image[s] de l' article

quay lại

[/php]PHP. [php]define['MAX_FILE_SIZE', 751200]; . 'KB';

foreach [$FILES['image']['name'] as $number => $file] {
// thay thế mọi khoảng trắng trong tên tệp bằng dấu gạch dưới
$file = str_replace[’ ', '’, $file];
// begin by assuming the file is unacceptable
$sizeOK = false;
$typeOK = false;
// check that file is within the permitted size
if [$_FILES[‘image’][‘size’][$number] > 0 || $_FILES[‘image’][‘size’][$number]

Chủ Đề