ecriture correcte d'un chemin dans un champ d'une base de données
Bonjour,
Pouvez-vous me dire comment écrire un chemin vers fichier dans un champ de base de données mysql(qui s'appelerait lien_image par exemple );je me prends la tête depuis un bon moment car le caractère "\" n'est pas saisi dans le chemin vers le fichier(ex :C:\ : le \ n'apparaît pas et la recherche ne peut s'effectuer).
Merci beaucoup à vous de votre aide.
Cordialement.
new_wave
stocker le chemin vers un fichier image
Bonjour,
Je te remercie de ta réponse.
Voici ma question posée de manière plus précise, avec présentation de la situation.
Le fichier b1.jpeg est situé dans le repertoire Site_Projet, qui est un sous-répertoire du répertoire www (web local)
J'ai stocké dans le champ lien_image_meuble(type varchar(100)) de la table meuble, le chemin relatif suivant b1.jpeg., pour l'enregistrement qui correspond à id_meuble =1
Au niveau de mon code php j'ai ecrit cela dans le fichier scrip_produit.php
Je te remercie d'essayer de m'expliquer comment faire pour afficher l'image sélectionnée dans ma requête sql
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
<?php
// connexion a la BD
// Paramètres persos
$host = "localhost"; // voir hébergeur
$user = "root"; // identifiant de votre BD (vide ou "root" en local)
$pass = ""; // mot de passe de votre BD (vide en local)
$bdd = "perrin_sa"; // nom de la BD
// --------------------------------
// connexion
@mysql_connect($host,$user,$pass) or die("Impossible de se connecter");
@mysql_select_db("$bdd") or die("Impossible de se connecter");
echo " la connexion a bien eu lieu";
// --------------------------------
?>
<?php
//stockage de la première partie du chemin vers le fichier b1.jpeg
$img_url = "http://127.0.0.1/Site_Projet/";
// La requete :
//dans le cas présent je n'ai testé que pour une valeur de id_meuble =1 mais je souhaite ensuite sélectionner les champs design_meuble, descrip_meuble, lien_image_meuble de tous les enregistrements
$query = "SELECT design_meuble, descrip_meuble, lien_image_meuble FROM meuble where id_meuble =1";
$result = mysql_query($query);
$meuble = mysql_fetch_array($result);
// $NbrLigne : le nombre de lignes
// $NbrCol : le nombre de colonnes
$NbrLigne=1;
$NbrCol=1;
while($meuble !=false){
?>
<table>
<tbody>
<?php
//------------------------------
// pour chaque ligne
for ($i=1; $i<=$NbrLigne; $i++)
{
?>
<tr>
<?php // pour chaque colonne (de la ligne)
for ($j=1; $j<=$NbrCol; $j++)
{
?> <td>
<?php // -------------------------
// DONNEES A AFFICHER dans la cellule
echo $meuble['design_meuble']; // CONTENU de la CELLULE (exemple)
echo $meuble['descrip_meuble'];
//A présent, j'essaye d'afficher l'image b1.jpeg qui se trouve au niveau de l'enregistrement pour lequel id_meuble =1 mais je n'y parviens pas
//header("Content-type: image/jpeg");
//move_uploaded_file("b1.jpeg","http://localhost/Site_Projet/b1.jpeg");
echo '<img src="'.$img_url.$meuble['lien_image_meuble'].'" />';
?>
// -------------------------
?> </td>
<?php } // end for
?>
</tr>
<?php
} // end for
//le code ci-dessous s'applique quand il y a plusieurs enregistrement résultat
//$meuble = mysql_fetch_array($result);
}//fin de while
?> |
5 pièce(s) jointe(s)
affichage d'image dont le chemins est stocké en BDD
Bonjour et merci de tes conseils que j'ai bien suivis je l'espère.
Je travaille à aider un jeune qui débute en développement mysql-php .
Je te fais parvenir le code de la première page html qui est la page d'accueil qui, par le biais d'un lien amène à la page scriptproduit.php .
J'ai écrit le code des fonctions connexion_BDD() et affichage_donnees_BDD dans un fichier fonctions.php, que j'ai inclut dans le fichier scriptproduit.php .
tu trouveras ce fichier fonctions.php en fichier joint.
Je ne peux pas te faire parvenir le fichier de bdd .sql qui,est trop lourd , mais le fichier imp_ecran contient une impression d'écran de la table meuble_2 (la table meuble contient directement les image dans le dernier champ et je ne l'ai pas supprimée pour l'instant)dont le premier enregistrement(id_meuble=1)contient la valeur b1.jpeg pour le champ lien_image_meuble.
Je t'envoie également dans le fichier imp_ecran_bdd les impressions d'écran des fichiers accueil.html et scriptproduit.php pour que tu voies le résultat obtenu une fois que le fichier scriptproduit.php est interprété .;
Tu peux constater sur l'impression ecran du fichier scriptproduit.php que l'image n'apparaît pas; seul le texte correspondant au contenu des champs design_meuble et descrip_meuble apparaît.
Dernier petit rappel, j'ai stocké dans le repertoire www, le repertoire "Site_Meubles_Projet_Nicolas_Gerard" qui contient les fichiers b1.jpeg , accueil.php, scriptproduit.php.
Je te remercie encore beaucoup de ton aide, d'autant plus que nous sommes un jour férié!
Bien cordialement.
new_wave