affichage d`une image avec des champs d`une autre table
4 messages
• Page 1 sur 1
- martin266
- Nouveau WRInaute

- Messages: 3
- Inscription: 22 Aoû 2008
affichage d`une image avec des champs d`une autre table
salut,
je suis capable d`afficher l`image de la base de donnee mais j`arrive pas a afficher ses informations lies a une autre table ( titre, prix, description).
Table image (img_id, img_nom, img_taille, img_type, img_blob).
table produit (ref_produit, description, titre, prix, img_id).
merci d`avance pour votre aide[/code]
je suis capable d`afficher l`image de la base de donnee mais j`arrive pas a afficher ses informations lies a une autre table ( titre, prix, description).
Table image (img_id, img_nom, img_taille, img_type, img_blob).
table produit (ref_produit, description, titre, prix, img_id).
- Code: Tout sélectionner
fichier apercu.php
<?php
if ( isset($_GET['id']) )
{
$id = intval ($_GET['id']);
$db = mysql_connect("localhost","root","");
$ret = mysql_select_db("boutique",$db) or die (mysql_error ());
$req = "SELECT image.img_id, image.img_type, image.img_blob, produit.img_id, produit.ref_produit, produit.titre, produit.description FROM image INNER JOIN produit WHERE image.img_id = produit.img_id and image.img_id = ".$id;
$ret = mysql_query ($req) or die (mysql_error ());
$col = mysql_fetch_row ($ret);
if ( !$col[0] )
{
echo "Id d'image inconnu";
}
else
{
header ("Content-type: ".$col[1]);
echo $col[2] ;
echo $col[4];
echo $col[5];
echo $col[6];
}
}
else
{
echo "Mauvais id d'image";
}
?>
- Code: Tout sélectionner
fichier affichage.php
<?php
$db = mysql_connect("localhost","root","");
$ret = mysql_select_db("boutique",$db) or die (mysql_error ());
$req = "SELECT image.img_nom, image.img_id FROM image ORDER BY image.img_nom";
$ret = mysql_query ($req) or die (mysql_error ());
while ( $col = mysql_fetch_row ($ret) )
{
echo "<a href=\"apercu.php?id=".$col[1].
"\">".$col[0]."</a><br /> ";
}
?>
merci d`avance pour votre aide[/code]
- jeroen
- WRInaute passionné

- Messages: 2461
- Inscription: 30 Aoû 2002
Salut,
Ne me dis pas que tu stockes ton image dans ta base de donnée ?
Si ?
Ce n'est pas ce qu'il faut faire : il faut juste stocker l'url de ton image.
Par ailleurs ton code
ne marche pas : il indique au navigateur que ce qui suit est une image (donc $col[2]), mais aussi ce qui suit : $col[4], $col[5], $col[6]...
En modifiant la structure de ta base de donnée pour ne stocker que l'URL de ton image, ton code deviendra :
Ne me dis pas que tu stockes ton image dans ta base de donnée ?
Si ?
Ce n'est pas ce qu'il faut faire : il faut juste stocker l'url de ton image.
Par ailleurs ton code
- Code: Tout sélectionner
header ("Content-type: ".$col[1]);
ne marche pas : il indique au navigateur que ce qui suit est une image (donc $col[2]), mais aussi ce qui suit : $col[4], $col[5], $col[6]...
En modifiant la structure de ta base de donnée pour ne stocker que l'URL de ton image, ton code deviendra :
- Code: Tout sélectionner
(..)
else
{
echo "<img src=\"".$col[CHAMP_QUI_CONTIENT_L'URL]."\" alt=\"\" />" ;
echo $col[4];
echo $col[5];
echo $col[6];
}
(...)
-

zeb - WRInaute accro

- Messages: 4509
- Inscription: 5 Déc 2004
problème de conception :
ton script apercu.php renvoie un header de type image (logique c'est le but il me semble) et envoie l'image vers la sortie standard (plus d'autres grigri mais en texte qui ne seront pas visibles).
(au passage même remarque ne met pas ton image en base c'est pas terrible)
ensuite ton script affichage.php affiche un lien vers l'aperçu (qui devrait fonctionner a priori) mais ne traite pas les info textuels en base. donc tu ne risque pas de les voir.
moralité utilise la requête de l'apperçu dans le script d'affichage et en plus du lien vers l'aperçu tu auras les autres infos textuelles.
et évite de gaspiller tes ressources en cherchant les infos textuel là ou tu dois juste produire une image.
ton script apercu.php renvoie un header de type image (logique c'est le but il me semble) et envoie l'image vers la sortie standard (plus d'autres grigri mais en texte qui ne seront pas visibles).
(au passage même remarque ne met pas ton image en base c'est pas terrible)
ensuite ton script affichage.php affiche un lien vers l'aperçu (qui devrait fonctionner a priori) mais ne traite pas les info textuels en base. donc tu ne risque pas de les voir.
moralité utilise la requête de l'apperçu dans le script d'affichage et en plus du lien vers l'aperçu tu auras les autres infos textuelles.
et évite de gaspiller tes ressources en cherchant les infos textuel là ou tu dois juste produire une image.
4 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- Comment remplacer une image par une autre image dans une web
- [CSS] Aligner une image à coté d'une div en display:table-cell ?
- Comment créer un lien sur une visite virtuelle vers une image ou une autre VV
- [sql] Tri d'une table selon un champ dans une autre table
- Comment créer une table dans une base de données
- afficher une table SQL dans un tableau / faire une recherche
- definir une variable apres un insert dans une table en php.
- Comment inclure un zoom sur une image fixe dans une vidéo?
- aligner une image sur une ligne de texte
- Faire une zone cliquable sur une image mise en background
Consultez la description détaillée des produits ou services de Google suivants : Google Image Labeler
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
