Page 1 sur 1

Affichage d'image

Posté : 03 déc. 2005, 22:24
par ekinoxe
Bonjour j'aurai aimer savoir si il est possible d'affciher une image a partir d'un nom rentré en tant que variable php.
Par exemple
$nom correspond a "jojo"
et moi je voudrait afficher l'image se trouvant dans "d:/images/jojo.jpeg"

Posté : 03 déc. 2005, 22:37
par jobherzt
ben, suffit de faire une concatneation ? :
$nom_image="D:\images\".$nom.".jpg";
et apres tu utilise $nom_image pour manipuler ton image suivant ce que tu veux en faire

Posté : 03 déc. 2005, 22:48
par ekinoxe
cela ne marche toujours pas j'ai une erreur a l'endroit ou je déclare $nom_image

je pense que cel vient d'un " ou ' car tout le reste de mon texte change de couleur comme si un " n'avait pas été fermé

voici le code complet de la page
<?php
	$NF = $_POST['NF'];
	$AF = $_POST['AF'];
	$TYPE = $_POST['listeGenre'];
	$REAL = $_POST['listeReal'];
	$ACT1 = $_POST['listeActeur1'];
	$nom_image="\affiche\".$nom.".jpeg";

	//connection à la base FILM
	$connection = mysql_connect('localhost','client','client') or die(mysql_error());
	mysql_select_db('film', $connection) or die(mysql_error());

	//Création de la requete
	$requete = "SELECT * FROM film WHERE 1=1";
				if($NF!="") $requete .=" AND NomFilm like '".$NF."%' ";
				if($AF!="") $requete .=" AND AnneeFilm = '".$AF."' ";
				if($TYPE!="") $requete .=" AND CatFilm = '".$TYPE."' ";
				if($REAL!="") $requete .=" AND RealFilm = '".$REAL."' ";
				if($ACT1!="") $requete .=" AND Acteur1Film = '".$ACT1."' ";
		
	//Exécution de la requete
	$result = mysql_query($requete, $connection) or die('Erreur dans la création de la requete');
	$affected_rows = mysql_num_rows($result);

	//Affichage du résultat
		if($result = mysql_query($requete)) {
			while($ligne = mysql_fetch_row($result)) {
				$nom = $ligne[1];
				$duree = $ligne[2];
				$annee = $ligne[4];
				$desc = $ligne[5]; 
				?>
			<table width="100%" border="1">
			<td><img src="$nom_image"></img></td>
			 <tr>
				<td width="30%">Nom :</td>
				<td><?php echo "$nom" ;?></td>
			 </tr>
			<tr>
			<td>Durée :</td>
				<td><?php echo "$duree" ;?> minutes</td>
			 </tr>
			<tr>
				<td>Année :</td>
				<td><?php echo "$annee" ;?></td>
			</tr>
			<tr>
			<td>Descrption :</td>
				<td><?php echo "$desc" ;?></td>
			  </tr>
			</table>
			<?php
				echo "&nbsp";
			}
		} else {
			echo "Erreur de requête de base de données.";
		}
?>

Posté : 03 déc. 2005, 23:00
par jobherzt
tu pourrais me poster ton code, et me donner le nom de l'image avec laquellle tu as essayé ? n'oublie pas les balises 'php' ...

Posté : 03 déc. 2005, 23:03
par ekinoxe
pour l'image j'utilise celle çi

http://www.info-game.net/images/irobot.jpeg

Posté : 03 déc. 2005, 23:50
par Truc
je pense que cel vient d'un " ou ' car tout le reste de mon texte change de couleur comme si un " n'avait pas été fermé
C'est exactement cela... un antislash a la place d'un slash au niveau de "$nom_image". les guillemets se retrouvent echappés et donc ne coupent pas la chaine de caractère pour permettre la concaténation de la variable.

Je te conseile aussi de mettre dans la BD le nom de l'image avec son extension parce que dans ton cas tu ne pourra afficher que les images ".jpeg".

Posté : 03 déc. 2005, 23:56
par ekinoxe
nikel sa a l'air de passer. J'ai du modifier un peu le code car j'avais un petite erreur pas méchant. désormais on dirait que sa marche car je n'ast plus une seul erreur mais hélas l'image ne s'affiche toujours pas

Code : Tout sélectionner

$nom_image="affiche/".$nom.".jpeg"; ?> <table width="100%" border="0"> <td><img src='$nom_image'></img></td>

Posté : 04 déc. 2005, 00:01
par Truc
la variable est endehors des balises php => <? ?>

préfère le bouton PHP au bouton CODe pour poster :wink:

Posté : 04 déc. 2005, 00:04
par ekinoxe
j'ai essayer avec le code suivant
<?php
$nom_image="/Affiche/".$nom.".jpeg"; 
				?>
			<table width="100%" border="0">
			<td><img src=<?php echo "$nom_image"; ?>></img></td>
			 <tr>
				<td width="30%">Nom :</td>
				<td><?php echo "$nom" ;?></td>
			 </tr>
cel marche très bien pour le nom du film mais pour l'image rien a faire :x :x

Posté : 04 déc. 2005, 00:10
par Truc
est tu sur du chemin ? ajoute un point devant le chemin indiqué:
<?
$nom_image="./Affiche/".$nom.".jpeg";
                ?>
    <table width="100%" border="0">        
        <tr>
			<td><img src="<?php echo $nom_image; ?>"></img></td>
            <td width="30%">Nom :</td>
            <td><?php echo $nom ;?></td>
        </tr>
ça ne sert a rien de mettre les variables entre guillemets a part apporter des erreurs si elles sont mal utilisées.

Et aussi remettre dans l'ordre les balises <tr> et <td>

Posté : 04 déc. 2005, 00:18
par ekinoxe
:lol: :lol: :lol: j'ai trouvééééé
<?php
$nom_image="/Affiche/".$nom.".jpeg";
                ?>
            <table width="100%" border="0">
            <td><img src="<?php echo "$nom_image"; ?>"></img></td>
             <tr>
                <td width="30%">Nom :</td>
                <td><?php echo "$nom" ;?></td>
             </tr>
regarde bien apres <img src= on doit toujours mettre entre "" la source des images. c'est cela qu'il manquait

Posté : 04 déc. 2005, 00:23
par Truc
mais mes remarques restent valides, ce sont des habitudes a prendre :wink:

n'oublis pas le [Résolu] :)