Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memasukkan Imej dengan betul ke dalam Pangkalan Data MySQL Menggunakan PHP?

Bagaimana untuk Memasukkan Imej dengan betul ke dalam Pangkalan Data MySQL Menggunakan PHP?

Patricia Arquette
Patricia Arquetteasal
2024-12-31 13:17:18906semak imbas

How to Properly Insert Images into a MySQL Database Using PHP?

Cara Memasukkan Imej ke dalam Pangkalan Data MySQL Menggunakan PHP

Masalah:

Anda sedang cuba menyimpan imej dalam pangkalan data MySQL tetapi program ini tidak memasukkan data imej.

Petikan Disediakan Kod:

    $file = $_FILES['image']['tmp_name'];
    ...
    if ($image_query = mysql_query ("insert into product_images values (1,'$image_name',$image )"))
    {
        ...
    }

Mesej Ralat:

Anda mempunyai ralat dalam sintaks SQL anda; semak manual yang sepadan dengan versi pelayan MySQL anda untuk sintaks yang betul.

Penyelesaian:

1. Pastikan Lajur Imej adalah daripada Jenis BLOB:
Sahkan bahawa lajur yang anda gunakan untuk menyimpan imej adalah daripada jenis data BLOB.

2. Bersihkan Data Input:
Gunakan fungsi MySQLi untuk mengendalikan pertanyaan SQL dan melepaskan aksara khas dalam data input untuk mengelakkan suntikan SQL.

Kod Dibetulkan (Andaikan ID Sentiasa '1' ):

$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$image_name = addslashes($_FILES['image']['name']);

$query = "INSERT INTO product_images (id, image, image_name) VALUES ('1', '{$image}', '{$image_name}')";

if (mysqli_query($conn, $query)) {
    ...
}

3. Kemas kini Borang HTML:
Borang HTML hendaklah dikemas kini untuk menggunakan atribut enctype yang betul untuk memuat naik fail:

<form action="insert_product.php" method="POST" enctype="multipart/form-data">
    <input type="file" name="image" />
    <input type="submit" />
</form>

4. Simpan Fail pada Cakera (Pilihan):
Pertimbangkan untuk menyimpan fail imej pada cakera dan bukannya menggunakan pangkalan data MySQL untuk jumlah data yang besar. Ini boleh meningkatkan prestasi dan mengurangkan beban pangkalan data.

Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Imej dengan betul ke dalam Pangkalan Data MySQL Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn