salut,
comment recupére des images à partir d'une base de donnés mysql
j'ai réussi à recupérer et afficher d'autres données mais les images non.
merci d'avance
Version imprimable
salut,
comment recupére des images à partir d'une base de donnés mysql
j'ai réussi à recupérer et afficher d'autres données mais les images non.
merci d'avance
(re)Bonjour,
Tu récupères en fait l'adresse (chemin relatif) de tes images à partir de ta base de données.
Il ne te reste qu'à spécifier cette valeur dans le src de l'image.
Code:<img src="$variable" alt="monImage" />
Merci d'utiliser la FAQ, la fonction de recherche, les Cours et Tutoriels mit à disposition avant de poster dans le forum.
Vous auriez aisément trouvé ce cour de HTML
j'ai essayé l'exemple avec un cours que je l'ai telechargé avant de poster le message dans le forum:( et qui contient ça:il m'affiche que les erreurs.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 4/ Affichage de l'image: Ce script sera 'afficher_image.php' et est composé tel que: <?php // connexion à la base de données: mysql_connect("localhost","utilisateur","motdepasse"); mysql_select_db("test"); // on récolte les données contenues dans la table: $requete = mysql_query ("SELECT * FROM image WHERE id='$id'"); $data = mysql_fetch_array ($requete); $id = $data["id"]; $donnees_binaires = $data["donnees_binaires"]; $type_fichier = $data["type_fichier"]; header ( "contenttype: $type_fichier"); print "$donnees_binaires"; ?> 5/ Le lien vers l'image: Ce code afficher l'image directement où vous l'insérez. <?php print "<img src='afficher_image.php?id=$id'/>"; ?>
en plus j'ai faisil m'affiche un cadre mais ne contient pas l'imageCode:echo'<img src="$img" alt="$id" />';
et merci pour l'aide
Avec ce code, tu dois avoir des images enregistrée dans la base de données sous forme binaire.
Et non pas l'url des images stockées.
Comment tes images sont-elles actuellement enregistrées?
meme j'ai essayée ça:que je l'ai trouve dans les cours PHPCode:echo'<img src="lettres.php?img=$donnees_messages[img]" alt="id" />';
mais toujours le meme problème:(
merci
Si tu ne réponds pas à mes questions, on avancera pas...
Comment stockes tu actuellement tes images ?
Montres moi à quoi ressemble un enregistrement de ta table.
Savoir si au moins tu as respecté la façon dont il fallait utiliser le script.
le type du champ est longblob
On va prendre le problème autrement puisque tu ne réponds toujours pas aux questions.
Pourquoi souhaites tu enregistrer tes images sous forme binaire au lieu de spécifier seulement leur adresse ?
juste j'ai cherché sur le net comment stocker des images dans la base de données, je me suis tombée sur des réponses qui disent que il faut choisir
ou bien le type blob longblob
je l'ai appliqué
donc lorsque j'ai crée ma base à partir de wampserver j'ai spécifié le type longblob et au moment de l'insertion devant le champ img il m'a affiché une bouton parcourir qu'à partir duquel j'ai choisi l'emplacement de l'image
c'est tous ce que j'ai fait
merci
La question n'est pas le pourquoi de cette méthode mais quel besoin à stocker l'image dans la base de données ?
On va faire simple.
Tu maîtrises le PHP à un niveau assez bas du fait de ton manque d'expérience.
Le fait de manipuler des images ainsi demande un niveau de compréhension du langage et du traitement des données plus important que ce que tu maîtrises pour l'instant.
Je ne te dis pas de chercher à apprendre et comprendre mais sur ce sujet et l'ancien, tu t'es contenté de reprendre des scripts, de tenter de vainement les adapter à tes besoins pour ensuite nous demander de les débugger.
Pourquoi ne pas créer tes propres solutions à partir d'éléments simples afin de pouvoir apprendre à coder ?
Il existe des systèmes d'upload de fichier sur un serveur avec le langage PHP.
Tu hébergeras ton image sur le serveur.
Ensuite, tu n'auras qu'à dire que ton image est stocké dans tel dossier et qu'elle porte tel nom.
Ceci, ce seront des informations à spécifier dans la base de données.
Pour le reste, c'est un simple affichage d'image comme tu as pu apprendre à faire lorsque tu as codé tes premières pages HTML.
Tu n'as aucun besoin actuel (ou alors fais le moi savoir) qui t'oblige à stocker tes images dans la base de données plutôt que sur le serveur.
j'ai le meme probleme, mais moi j'utilise Delphi,
je voulais à partir de la requette recupérer l'image que j'ai enregistrer dans la base sous forme binaire, et l'affecté à composant timage pour visualiser.
mais cela ne marche pas
voici ce que je fais
Code:
1
2
3
4
5
6
7
8
9
10 Edit_Code.Text:=vartostr(MyQueryUpdateEnfant['Code_enfant']); Edit_Nom.Text:=vartostr(MyQueryUpdateEnfant['Nom_Enfant']); Edit_prenom.Text:=vartostr(MyQueryUpdateEnfant['Prenom_Enfant']); JvDateEdit1.Text:=vartostr(MyQueryUpdateEnfant['Date_nais']); Edit_lieunais.Text:=vartostr(MyQueryUpdateEnfant['Lieu_Nais']); Edit_paysnais.Text:=vartostr(MyQueryUpdateEnfant['Pays_nais']); Edit_villenais.Text:=vartostr(MyQueryUpdateEnfant['Ville_Nais']); Edit_codeparent.Text:=vartostr(MyQueryUpdateEnfant['Code_Pare']); Edit_codeparain.Text:=vartostr(MyQueryUpdateEnfant['Code_Parain']); image1.picture:=(MyQueryUpdateEnfant['photo']);
C'est en fait très facile ce que tu cherche à faire.
Dans une de tes tables, tu créé un champ, par exemple maPhoto.
Dans ce champ, tu rentre l'URL de ton image (que tu as stocké dans le dossier de ton site).
Exemple : http://localhost/monSite/photos/monImage.jpg
Ni plus, ni moins.
Ensuite, il te suffit de faire :
Bien entendu, il faut tu "appelle" ta photo à l'aide d'une reqûete au préalable, par exemple :Code:<?php echo '<img src="' .$maPhoto. '" alt="maPhoto" title="maPhoto"/></img>'; ?>
Et tu nomme le résultat : $maPhoto.Code:SELECT maPhoto FROM maTable WHERE maCondition="ce que tu veux";
Voilà