photo par défaut ne s'affiche pas

Eléphant du PHP | 257 Messages

19 févr. 2012, 22:40

bonjour j'ai un soucis avec une photo par défaut qui ne s'affiche auriez vous une idée ??? sur la solutions svp??
include("sources/config.php");

     $select=mysql_query("SELECT * FROM im_annonce WHERE id_gal=".$_SESSION['detail']." LIMIT 0,1");
	 while($row=mysql_fetch_array($select))
		{
		$im = $row['gal'];
	   	if (isset($im))
		{	
        vignette('image_annonce/'.$im.'', 300, 175);
		
		echo'<img src="MINIimage_annonce/'.$im.'" border="0" />';
		}
		else
		{
		vignette('image_annonce/nophoto.jpg', 300, 175);
		
		echo'<img src="MINIimage_annonce/nophoto.jpg" border="0" />';
		}
	   }
Merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

20 févr. 2012, 01:12

Salut,

Première chose : tu n'a pas besoin de while puisque tu spécifie que la requête ne retourne qu'un seul tuple avec la limit => while à virer

Ensuite tu utilise isset qui sert à vérifier l'existence d'une variable et vu que tu définis la variable au dessus du test c'est toujours vrai ;)

Tu cherche la fonction file_exists ;)


@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 257 Messages

20 févr. 2012, 22:55

bonjour je fait une requête LIMIT car je ne sort que une seule photo sur dix qui est le maximum par annonce

une solutions serait comme cela alors
<?php
	$im = $row['gal'];

        $filename = vignette('image_annonce/'.$im.'', 300, 175);
        if (file_exists($filename)) {
        echo'<img src="MINIimage_annonce/'.$im.'" border="0" />';
        } else {
        echo'<img src="cssstyle/imdesign/nophoto.jpg;" width="234" height="175" />';  
        }
je viens de tester cela quand j'ai une photo c'est ok quand je n'est pas de photo rien ne s'affiche ou passe la photo par défaut????

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

20 févr. 2012, 23:09

y a un point virgule dans le nom de l'image ? parce qu'il y en a un dans la balise la :)

Après faut debuguer, commence par afficher le contenu de $filename, avec var_dump par exemple :)


@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 257 Messages

21 févr. 2012, 21:10

salut je viens de retiré la virgule toujours c'est toujours la même chose , je donnerai bien ma langue au chat

		$im = $row['gal'];

        $filename = vignette('image_annonce/'.$im.'', 300, 175);
        if (file_exists($filename)) {
        echo'<img src="MINIimage_annonce/'.$im.'" border="0" />';
        } else {
        echo'<img src="cssstyle/imdesign/nophoto.jpg" width="234" height="175" border="0" />';  
        } 

ViPHP
xTG
ViPHP | 7331 Messages

21 févr. 2012, 21:29

Problème de chemin...
Ouvres la page web, puis copies/colles le chemin que tu mets dans la balise img et t'auras une jolie 404.
A toi de chercher s'il y a pas une majuscule quelque part ou un dossier oublié.

Eléphant du PHP | 257 Messages

21 févr. 2012, 22:09

j'ai trouver l'image s'affiche par défaut , j'ai une petite erreur
        <?php
        $select=mysql_query("SELECT * FROM im_annonce WHERE id_gal=".$_SESSION['detail']." LIMIT 0,1");
        while ($Infos = mysql_fetch_assoc($select))
        {
        $im = $Infos['gal'];
		vignette('image_annonce/'.$im.'', 300, 175);
        }
        if ($im == FALSE)// ici l'erreur
        {
		echo ("<img src='cssstyle/imdesign/nophoto.jpg' width='234' height='175' border='0' />");		
        }
        else
        {
        echo ("<img src='MINIimage_annonce/".$im."' border='0' />");	
        }
	   ?>

et l'erreur c'est
Notice: Undefined variable: image in C:\Program Files\EasyPHP-5.3.8.1\hesbaye\detail_anno.php on line 58

Eléphant du PHP | 257 Messages

21 févr. 2012, 22:12

résolut et merci à tous de votre aide =D> =D> =D> =D> =D> =D> =D> =D>
        <?php
        $select=mysql_query("SELECT * FROM im_annonce WHERE id_gal=".$_SESSION['detail']." LIMIT 0,1");
        while ($Infos = mysql_fetch_assoc($select))
        {
        $im = $Infos['gal'];
		vignette('image_annonce/'.$im.'', 300, 175);
        }
        if(@$im == FALSE)
        {
		echo ("<img src='cssstyle/imdesign/nophoto.jpg' width='234' height='175' border='0' />");		
        }
        else
        {
        echo ("<img src='MINIimage_annonce/".$im."' border='0' />");	
        }
	   ?>