A voir également:
- Images ds mysql
- Visualisez cette image avec un logiciel d'édition d'images. combien y a-t-il de pixels noirs sur le camion ? ✓ - Forum Python
- Mysql download - Télécharger - Bases de données
- Emulateur ds mac ✓ - Forum MacOS
- M3 ds real ✓ - Forum Jeux vidéo
- Emulateur ds iphone - Forum iPhone
1 réponse
Canard007
Messages postés
5927
Date d'inscription
mercredi 26 mai 2004
Statut
Contributeur
Dernière intervention
18 septembre 2009
215
2 juin 2004 à 17:09
2 juin 2004 à 17:09
le plus simple c'est à mon avis d'uploader l image (dans la cas d'une page web) et de donner le chemin d accé dans ta base sous forme de chaine de caratere...car franchement si il y a beaucoup d images cela risque de ralentir considerablement tes requetes.
Enfin si tu persiste voila quelques lignes de code et du commantaire cela pourra sans doute t 'aider ;-)
Stocker directement des images avec MySQL
Il nous faut créer une base (nous l'appellerons "essai") et une table (nous l'appellerons "images_binaires") qui comprendra les champs suivants: id (un entier), donnees_binaires (type MySQL LONGBLOB), nom_fichier (une chaîne), taille_fichier (une chaîne), type_fichier (une chaîne), et, éventuellement, un champ description (une chaîne). On n'oubliera pas de préciser "auto_increment" pour l'identifiant. Nous allons insérer les images dans la base à l'aide, par exemple, d'un formulaire HTML. Il ressemblera à:
<form method="post" action="inserer_image.php" enctype="multipart/form-data">
Nom du fichier: <input type="file" name="image" size="40">
<br><input type="submit" name="ok">
</form>
Notre programme inserer_image.php sera alors le suivant:
<?php
mysql_connect("","root","");
mysql_select_db("essai");
$donnees = addslashes(fread(fopen($image, "r"), filesize($image)));
$result=mysql_query("INSERT INTO images_binaires (donnees_binaires,nom_fichier,taille_fichier,type_fichier) VALUES ('$donnees','$image_name','$image_size','$image_type')");
$id= mysql_insert_id();
print "<br>Indentifiant du fichier dans la base: $id<br>";
mysql_close();
?>
Un petit programme php, afficher_image.php, va permettre de récupérer l'image dans la base:
<?php
@mysql_connect("","root","");
@mysql_select_db("essai");
$requete = "SELECT donnees_binaires,type_fichier FROM images_binaires WHERE id=$id";
$resultat = @mysql_query($requete);
$donnees = @mysql_result($resultat,images_binaires.donnees_binaires);
$type = @mysql_result($resultat,0,images_binaires.type_fichier);
header( "content-type: $type");
echo $donnees;
?>
On appellera ce programme avec une instruction HTML du type:
<img src="afficher_image.php"?id=identifiant>
où l'on précisera l'identifiant correspondant.
Enfin si tu persiste voila quelques lignes de code et du commantaire cela pourra sans doute t 'aider ;-)
Stocker directement des images avec MySQL
Il nous faut créer une base (nous l'appellerons "essai") et une table (nous l'appellerons "images_binaires") qui comprendra les champs suivants: id (un entier), donnees_binaires (type MySQL LONGBLOB), nom_fichier (une chaîne), taille_fichier (une chaîne), type_fichier (une chaîne), et, éventuellement, un champ description (une chaîne). On n'oubliera pas de préciser "auto_increment" pour l'identifiant. Nous allons insérer les images dans la base à l'aide, par exemple, d'un formulaire HTML. Il ressemblera à:
<form method="post" action="inserer_image.php" enctype="multipart/form-data">
Nom du fichier: <input type="file" name="image" size="40">
<br><input type="submit" name="ok">
</form>
Notre programme inserer_image.php sera alors le suivant:
<?php
mysql_connect("","root","");
mysql_select_db("essai");
$donnees = addslashes(fread(fopen($image, "r"), filesize($image)));
$result=mysql_query("INSERT INTO images_binaires (donnees_binaires,nom_fichier,taille_fichier,type_fichier) VALUES ('$donnees','$image_name','$image_size','$image_type')");
$id= mysql_insert_id();
print "<br>Indentifiant du fichier dans la base: $id<br>";
mysql_close();
?>
Un petit programme php, afficher_image.php, va permettre de récupérer l'image dans la base:
<?php
@mysql_connect("","root","");
@mysql_select_db("essai");
$requete = "SELECT donnees_binaires,type_fichier FROM images_binaires WHERE id=$id";
$resultat = @mysql_query($requete);
$donnees = @mysql_result($resultat,images_binaires.donnees_binaires);
$type = @mysql_result($resultat,0,images_binaires.type_fichier);
header( "content-type: $type");
echo $donnees;
?>
On appellera ce programme avec une instruction HTML du type:
<img src="afficher_image.php"?id=identifiant>
où l'on précisera l'identifiant correspondant.
13 janv. 2009 à 10:44
5 févr. 2009 à 15:02
8 févr. 2011 à 10:30