Page 1 sur 1

File_exists ne fonctionne pas

Posté : 10 janv. 2016, 22:26
par Se7en512
Bonsoir,

je souhaite tester si un fichier existe, mais la fonction me renvoi toujours false.
$filename="/web_images/affiche/images1.png";

if (file_exists($filename))
{ echo "existe"; }
else
{ echo "existe pas";}
Vu que j'effectue cela dans une boucle, je lance le reset de stat avec clearstatcache(); après chaque appel de file_exists, mais ça ne change rien.

Voici le programme un peu plus complet si besoin :
foreach($lines as $line_num => $line)
 {
         $filename= "/web_images/affiche/".$line.".jpg";
         if (file_exists($filename))
                 { [i]affiche l'image[/i] }
         else
                {$filename="/web_images/affiche/default.png";}
}
j'ai essayé de debugger en faisant un echo de filename style : echo "#DEBUT#".$filename."#FIN#" ;
il m'affiche correctement le chemin complet.

Le but est d'afficher les images presentes, et sinon afficher l'image par defaut "default.png".
Sauf qu'il m'affiche tout le temps l'image par defaut.

Re: File_exists ne fonctionne pas

Posté : 10 janv. 2016, 22:51
par or 1
il existe vraiment un répertoire web_images à la racine du serveur, et non dans le répertoire de base du site ?
donc plutôt :
$filename="./web_images/affiche/images1.png";
si le script est dans un répertoire qui a un sous répertoire web_images

Re: File_exists ne fonctionne pas

Posté : 10 janv. 2016, 23:03
par Se7en512
En effet c'était tout bête merci !

Comme l'image par defaut s'affichait (signifiant que la fonction m'avait retourné false) avec le chemin "/web_images/affiche" je ne me suis pas douté que file_exists ne gérait pas bien ce cas là.