Maison >développement back-end >tutoriel php >Comment puis-je stocker et récupérer des images dans une base de données MySQL à l'aide de PHP ?

Comment puis-je stocker et récupérer des images dans une base de données MySQL à l'aide de PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-10 21:55:10697parcourir

How Can I Store and Retrieve Images in a MySQL Database Using PHP?

Stockage et récupération d'images dans une base de données MySQL à l'aide de PHP

Comment pouvez-vous conserver et accéder aux images dans une base de données MySQL à l'aide de PHP ? Pour les débutants, comprendre cela peut être intimidant. Voici un guide complet pour vous aider à démarrer :

Étape 1 : Préparation de la base de données MySQL

Créez une table MySQL pour stocker les images, similaire à cet exemple :

CREATE TABLE testblob (
    image_id TINYINT(3) NOT NULL DEFAULT '0',
    image_type VARCHAR(25) NOT NULL DEFAULT '',
    image BLOB NOT NULL,
    image_size VARCHAR(25) NOT NULL DEFAULT '',
    image_ctgy VARCHAR(25) NOT NULL DEFAULT '',
    image_name VARCHAR(50) NOT NULL DEFAULT ''
);

Étape 2 : Stockage de l'image dans la base de données

Pour écrire une image à la base de données :

$imgData = file_get_contents($filename);
$size = getimagesize($filename);
mysql_connect("localhost", "$username", "$password");
mysql_select_db ("$dbname");
$sql = sprintf("INSERT INTO testblob
    (image_type, image, image_size, image_name)
    VALUES
    ('%s', '%s', '%d', '%s')",
    mysql_real_escape_string($size['mime']),
    mysql_real_escape_string($imgData),
    $size[3],
    mysql_real_escape_string($_FILES['userfile']['name'])
    );
mysql_query($sql);

Étape 3 : Récupération de l'image de la base de données

Pour afficher une image de la base de données :

$link = mysql_connect("localhost", "username", "password");
mysql_select_db("testblob");
$sql = "SELECT image FROM testblob WHERE image_id=0";
$result = mysql_query("$sql");
header("Content-type: image/jpeg");
echo mysql_result($result, 0);
mysql_close($link);

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn