Problème affichage image dans IE avec PHP

Petit nouveau ! | 1 Messages

23 déc. 2009, 10:16

Bonjour à tous, je suis designer et j'ai du reprendre un site en php. En plus de refaire le visuel je dois faire quelques manips dans le code mais ne connaissant pas bien PHP je galère.
Voici le problème : Il faudrait que lorsqu'il n'y a pas d'image à afficher, IE n'affiche pas le fameux rectangle avec une croix rouge.

Le hic c'est que Si je met une condition pour qu'il vérifie que le fichier existe dans la DB :
if($row['nom_image'] != '')
cela ne marche pas. Car le nom existe de toutes façons dans la DB. Ce qui se passe c'est que php va ajouter dynamiquement un 1,2,3,4,5,6 à ce nom.
 echo'<img onclick="afficher('.$a.')" style="width:75px;height:50px;" src="images_etablissements/'.substr($row['nom_image'],0,strlen($row['nom_image'])-4).''.$a.'.jpg" alt="" /><br />'
D'ou le problème, si les images n'existent pas dans le dossier (par exemple si il n'y a pas de image5.jpg) -> croix rouge.

Comment faire ?

Merci d'avance pour vos lumières !

Skikit
Invité n'ayant pas de compte PHPfrance

23 déc. 2009, 11:24

Salut,

Pour tester si ton image existe :
if(is_file("images_etablissements/'.substr($row['nom_image'],0,strlen($row['nom_image'])-4).''.$a.'.jpg"))
{
    //affiche ton image
}

ViPHP
ViPHP | 1996 Messages

23 déc. 2009, 16:08

Bonjour,

Deux choses peuvent t'aider :

if (!empty($row['nom_image']) && file_exists (images_etablissements/'.substr($row['nom_image'],0,strlen($row['nom_image'])-4).''.$a.'.jpg") )
echo'<img onclick="afficher('.$a.')" style="width:75px;height:50px;" src="images_etablissements/'.substr($row['nom_image'],0,strlen($row['nom_image'])-4).''.$a.'.jpg" alt="" /><br />';

Ainsi si $row['nom_image'] est vide => rien ne passe et ensuite si le fichier existes : l'image est demandé en sortie

EDIT :
Empty est très pratique et ne vérifie pas seulement les variables texte : regarde par là : http://php.net/manual/fr/function.empty.php
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr