Problème avec le file_exists()
Yabon
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'avais un site sur lequel tout fonctionnait et j'ai dû changer pas mal de petits trucs comme l'arborescence et les noms des fichiers.
J'ai rajouté aussi un fichier .htaccess et robots.txt et aussi des variables de sessions.
Avant mon code avec file_exists() fonctionnait sans problème mais plus maintenant :-(
--- CODE ---
$la_photo = _NOM_DU_SITE_."/images/paward/saison-2009/maphoto.jpg";
if(file_exists($la_photo)) echo "<img src='$la_photo' />";
else echo "<h4>Il manque la photo ".$la_photo."</h4>";
--------------
Déjà, faut pas me prendre pour plus nul que je suis : le fichier existe bien et si je copie le nom qui apparait après "Il manque la photo " et que je le colle dans un autre onglet, la photo apparait bien nickel.
De même si j'écris seulement echo "<img src='$la_photo' />"; l'image s'affiche très bien.
La photo existe, le lien est correcte mais file_exists() ne fonctionne pas
La seule piste que j'ai pu trouver de plausible viendrait du "safe mode" (d'après la doc php) et là ça commence à me parler chinois car je n'y ai jamais touché et j'ai regardé mon php.ini mais le safe mode est à off.
Alors je ne vois pas du tout pourquoi mon flie_exists() ne fonctionne plus depuis que j'ai modifié mon site.
Peut-être y aurait-il une sorte d'"effet de bord" avec ma session, mon .htaccess ou mon fichier robots qui aurait un mauvaise effet sur file_exists().
Je vous remercie de votre aide et j'espère que vous détaillerez un maximum votre réponse car le safe_mode et compagnie ça commence à me plus trop me parler...
PS : Oui je sais, y en a qui vont me dire mais pourquoi tu t'emmerdes à faire un file_exists() si t'es sur que les fichiers existent et que ça marche quand il est pas là ? Et bah en fait j'ai le même genre de contrôle pour les fichiers audio et le problème c'est que mon lecteur ne les lis plus du tout ce coup-ci!
J'avais un site sur lequel tout fonctionnait et j'ai dû changer pas mal de petits trucs comme l'arborescence et les noms des fichiers.
J'ai rajouté aussi un fichier .htaccess et robots.txt et aussi des variables de sessions.
Avant mon code avec file_exists() fonctionnait sans problème mais plus maintenant :-(
--- CODE ---
$la_photo = _NOM_DU_SITE_."/images/paward/saison-2009/maphoto.jpg";
if(file_exists($la_photo)) echo "<img src='$la_photo' />";
else echo "<h4>Il manque la photo ".$la_photo."</h4>";
--------------
Déjà, faut pas me prendre pour plus nul que je suis : le fichier existe bien et si je copie le nom qui apparait après "Il manque la photo " et que je le colle dans un autre onglet, la photo apparait bien nickel.
De même si j'écris seulement echo "<img src='$la_photo' />"; l'image s'affiche très bien.
La photo existe, le lien est correcte mais file_exists() ne fonctionne pas
La seule piste que j'ai pu trouver de plausible viendrait du "safe mode" (d'après la doc php) et là ça commence à me parler chinois car je n'y ai jamais touché et j'ai regardé mon php.ini mais le safe mode est à off.
Alors je ne vois pas du tout pourquoi mon flie_exists() ne fonctionne plus depuis que j'ai modifié mon site.
Peut-être y aurait-il une sorte d'"effet de bord" avec ma session, mon .htaccess ou mon fichier robots qui aurait un mauvaise effet sur file_exists().
Je vous remercie de votre aide et j'espère que vous détaillerez un maximum votre réponse car le safe_mode et compagnie ça commence à me plus trop me parler...
PS : Oui je sais, y en a qui vont me dire mais pourquoi tu t'emmerdes à faire un file_exists() si t'es sur que les fichiers existent et que ça marche quand il est pas là ? Et bah en fait j'ai le même genre de contrôle pour les fichiers audio et le problème c'est que mon lecteur ne les lis plus du tout ce coup-ci!
1 réponse
Regarde ton php.ini, file_exists peut servir à vérifier des URL si l'option de gestion des url est activée dans ta configuration. Sinon le comportement de file_exists est de vérifier l'existence d'un fichier avec un chemin absolu local, et pas une URL. Il en est de même pour les fonction include, require, etc...Selon la configuration tu pourras inclure des fichiers distants ou non....bonjour la faille de sécurité.
http://www.manuelphp.com/php/ini.allow-url-fopen.php
http://www.manuelphp.com/php/ini.allow-url-fopen.php