Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Lưu đường dẫn tệp của hình ảnh đã tải lên vào cơ sở dữ liệu MySQL

Sự cố bảo mật tiện ích mở rộng không dùng nữa sang một bên, tất cả những gì bạn cần làm là chèn tên tệp vào cơ sở dữ liệu. Để làm điều đó, hãy thêm trường "tên tệp" vào cơ sở dữ liệu của bạn và sau đó điều chỉnh truy vấn chèn của bạn cho phù hợp:

INSERT INTO products (name, description, price_low, price_high, filename)
              VALUES (:name, :desc, :price_low, :price_high, :filename)

Ngoài ra, $uploaddir của bạn biến trống, các tệp có thể không được lưu ở bất kỳ đâu vào lúc này. Để di chuyển các tệp của bạn đúng cách, hãy thử một cái gì đó như sau:

$uploaddir = '/path/where/you/can/save/';
$rawFilename = $_FILES['userfile']['name'];
$extension = pathinfo($rawFilename, PATHINFO_EXTENSION);

$uploadfile = $uploaddir . md5($rawFilename) . '.' . $extension;

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "File is valid, and was successfully uploaded.\n";
} else {
    echo "Upload failed";
}

Tập lệnh này giả định rằng bạn tin tưởng nội dung được tải lên và hàm md5 chỉ là một cách nhanh chóng và dễ dàng để "làm sạch" (nếu tôi có thể gọi nó như vậy) tên của tệp.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. cách thực thi lệnh mysql DELIMITER

  2. Ngẫu nhiên () Trong MySql?

  3. truy vấn mysql để lấy nhiều phạm vi ngày

  4. Cột trùng lặp khi tham gia

  5. Cách tốt nhất để chọn động tên bảng trong thời gian chạy là gì?