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

hiển thị một hình ảnh được lưu trữ trong một blob mysql

Chà ... câu trả lời cho lý do tại sao nó sẽ hoạt động như những gì bạn đã mô tả là do bạn sử dụng hàm header (). Trong PHP, bạn không thể in bất cứ thứ gì trước cuộc gọi tiêu đề vì điều này hướng máy chủ web chuẩn bị tiêu đề nội dung. Thường thì những nội dung đó thay thế hoàn toàn tất cả nội dung.

Thứ hai, tôi muốn đề cập rằng lưu trữ hình ảnh trong cơ sở dữ liệu thường là một ý tưởng tồi vì hai lý do.

  1. Nó có tác động đáng kể đến hiệu suất và kết xuất.
  2. Bạn phải viết mã để hiển thị dữ liệu blob thay vì chỉ hiển thị hình ảnh.

Phương pháp ưa thích để trình bày hình ảnh theo hướng cơ sở dữ liệu là bạn sẽ lưu trữ các hình ảnh trong một thư mục và tên tệp của chúng được lưu trữ trong cơ sở dữ liệu. Bây giờ, khi bạn muốn hiển thị hình ảnh, bạn chỉ cần thăm dò ý kiến ​​của DB về tên tệp bạn muốn hiển thị và sau đó chỉ cần đưa tên tệp vào một thuộc tính HTML.

Việc thực thi cũng nhanh hơn nhiều.

Ngoài ra, tôi muốn chỉ ra rằng nếu bạn muốn có một tập lệnh thực sự thực hiện việc hiển thị của bạn, bạn sẽ muốn tập lệnh đó xác định tiêu đề của bạn và sau đó lặp lại hoặc in đốm hình ảnh sau khi bạn xác định tiêu đề.

Xin lưu ý rằng khi bạn tạo thẻ html của mình ... trong thuộc tính src, sau đó bạn sẽ làm cho nó giống như thế này;

<img src="image.php?id=<some_number>">

Bây giờ, tệp image.php của bạn sẽ xuất dữ liệu hình ảnh vào thẻ.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel 5.4 trên PHP 7.0:Ngoại lệ PDO - Không thể tìm thấy trình điều khiển (MySQL)

  2. Khôi phục cơ sở dữ liệu mysql từ các tệp .frm

  3. CURRENT_DATE Ví dụ - MySQL

  4. Lỗi nghiêm trọng:Gọi đến hàm không xác định session_register ()

  5. INTERSECT trong MySQL