Câu hỏi:

cách truyền dữ liệu là ảnh lên mysql bằng php


Để truyền ảnh lên MySQL bằng PHP, bạn cần chuyển đổi ảnh thành dạng data BLOB, sau đó lưu vào database. Dưới đây là cách đơn giản nhất để thực hiện nhiệm vụ này:

Đầu tiên, thiết lập kết nối với cơ sở dữ liệu MySQL và khởi tạo bảng chứa ảnh. Giả sử bạn có bảng 'images' với cấu trúc như sau:

CREATE TABLE images (
  id INT AUTO_INCREMENT PRIMARY KEY,
  image MEDIUMBLOB NOT NULL
);

Tiếp theo, tạo một file PHP để upload ảnh. Đoạn code sau giúp bạn upload file ảnh lên server và lưu dữ liệu ảnh vào database:

<?php
$host = "localhost"; /* Host name */
$user = "user"; /* User */
$password = "password"; /* Password */
$dbname = "dbname"; /* Database name */

$con = mysqli_connect($host, $user, $password,$dbname);
if (!$con) {
  die("Connection failed: " . mysqli_connect_error());
}

if(isset($_POST['submit'])){
   /* Getting file name */
   $filename = $_FILES['file']['name'];

   /* Location */
   $location = "upload/".$filename;
   $imageFileType = pathinfo($location,PATHINFO_EXTENSION);
   $imageFileType = strtolower($imageFileType);

   /* Valid extensions */
   $valid_extensions = array("jpg","jpeg","png");

   $response = 0;
   /* Check file extension */
   if(in_array(strtolower($imageFileType), $valid_extensions)) {
      /* Upload file */
      if(move_uploaded_file($_FILES['file']['tmp_name'],$location)){
         $imgData = addslashes(file_get_contents($location));
         $insert = $con->query("INSERT into images (image) VALUES ('$imgData')");

         if($insert){
            $response = 1;
         } 
      }
   }
   echo $response;
   exit;
}
?>

<!-- HTML Form for file upload -->
<form method="post" action="" enctype="multipart/form-data">
   <input type="file" name="file" id="file" />
   <input type="submit" name="submit" value="Submit" />
</form>

Code này sẽ lấy file ảnh từ form, lưu file vào thư mục 'upload' trên server của bạn, chuyển đổi nó thành dạng BLOB, sau đó lưu data vào cơ sở dữ liệu MySQL.

Lưu ý mã nguồn này chỉ dùng cho mục đích mô phỏng, trong môi trường thực tế, bạn cần phải thêm các biện pháp bảo mật như kiểm tra kích thước file, validate dữ liệu,...

Nếu bạn muốn tìm hiểu thêm về PHP, MySQL, AI hay các công nghệ khác, hãy ghé thăm website trituenhantao.io nhé! Site này lấy tri thức cho cộng đồng làm tôn chỉ, luôn cập nhật những thông tin, kiến thức mới nhất về công nghệ.


Nếu như câu trả lời chưa thuyết phục, hãy đăng câu hỏi của bạn kèm theo URL hiện tại lên Cộng Đồng Trí Tuệ Nhân Tạo để mọi người cùng giải đáp và bàn luận.
Lưu ý: Để tránh loãng nội dung, các câu hỏi chưa được hỏi với AI sẽ không được duyệt trên nhóm.
Trang chủ | Hỏi tiếp | Xem lịch sử