[PHP] Utilisation de file_exists : DONE.

Utilisation de file_exists : DONE. [PHP] - PHP - Programmation

Marsh Posté le 24-10-2002 à 15:46:34    

:hello:
 
Encore une question...
 
J'ai du mal avec la fonction file_exists.
 
Contexte
Toujours pour le site de hockey, on affiche le classement des joueurs, avec photo pour les trois premiers. Souci, si la photo n'existe pas, une croix rouge serait du plus mauvais effet!
 
Donc, pour éviter cela, on utilise file_exists() et, si la photo n'existe pas, on affiche le logo du site.
 
Problème
Ca ne marche pas :sweat:
 
Cliquez ici : http://nhl.lfjr.net/?link=lhod_stat et descendez en bas du classement des joueurs.
 
Vous voyez alors "/images/joueurs/teemu_selanne.jpg", qui est le contenu de la variable du nom du joueur. (obtenu par echo)
 
A côté, vous voyez sa photo.
 
Voici le code associé :
 

Code :
  1. td class=link2 align=middle><b>1 - <? echo $o1; ?></b></td>
  2.   <td align=middle><img border=0 alt="<? echo $n1; ?>" src="<? echo $o1; ?>"></a></td>
  3.   <td class=link2 align=middle>    <b>2 -</b><td>
  4.   <td align=middle><img border=0 alt="<? echo $n2; ?>" src="<? if (file_exists($o2)) echo $o2; else echo $REP_ICONES . "logo.gif"; ?>"></a></td>
  5.   <td class=link2 align=middle>    <b>3 -</b></td>
  6.   <td align=middle><img border=0 alt="<? echo $n3; ?>" src="<? if (file_exists($o3)) echo $o3; else echo $REP_ICONES . "logo.gif"; ?>"></a></td>


 
On remarque que, pour le premier joueur, j'ai viré le test du file_exists, pour bien vous omntrer que je ne rêve pas, que le fichier marche bien... Et, pour les deux autres, je suis sûr que les fichiers existent.
 
J'ai testé avec la fonction getcwd() donnée dans un commentaire sur le manuel PHP, mais c'est adapté à mon serveur Apache sous Windows et ça ne marche pas sur le serveur distant (Unix).
 
Que faire???
 
Edit : j'ai réussi à corriger, faudra qu'on m'explique comment mon serveur comprend les raccourcis de répertoires. :/


Message édité par Fred999 le 24-10-2002 à 16:00:18
Reply

Marsh Posté le 24-10-2002 à 15:46:34   

Reply

Marsh Posté le 24-10-2002 à 15:52:47    

Bin euh... chez moi ça marche bien, j'ai bien la photo du gars quand le fichier est trouvé et le logo du site sinon. C'est p'têt le cache de ton browser qui fout la grouille :p


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 24-10-2002 à 15:57:24    

Justement, si tu vois la photo du gars, c'est parce que j'ai désactivé le test.
 
Et pour les deux autres, le test est activé, mais les fichiers existent...
 
Si j'activais le test pour le premier, tu verrais aussi le logo ;)
 
J'avais réussi à le faire marcher, mais là, je ne trouve plus.
 
J'ai l'impression qu'il se fourvoie dans les répertoires...
 
Mais merci d'avoir jeté un ?il ;)


Message édité par Fred999 le 24-10-2002 à 15:57:44
Reply

Marsh Posté le 25-10-2002 à 01:48:29    

Fred999 a écrit a écrit :

:hello:
 
Encore une question...
 
J'ai du mal avec la fonction file_exists.
 
Contexte
Toujours pour le site de hockey, on affiche le classement des joueurs, avec photo pour les trois premiers. Souci, si la photo n'existe pas, une croix rouge serait du plus mauvais effet!
 
Donc, pour éviter cela, on utilise file_exists() et, si la photo n'existe pas, on affiche le logo du site.
 
Problème
Ca ne marche pas :sweat:
 
Cliquez ici : http://nhl.lfjr.net/?link=lhod_stat et descendez en bas du classement des joueurs.
 
Vous voyez alors "/images/joueurs/teemu_selanne.jpg", qui est le contenu de la variable du nom du joueur. (obtenu par echo)
 
A côté, vous voyez sa photo.
 
Voici le code associé :
 

Code :
  1. td class=link2 align=middle><b>1 - <? echo $o1; ?></b></td>
  2.   <td align=middle><img border=0 alt="<? echo $n1; ?>" src="<? echo $o1; ?>"></a></td>
  3.   <td class=link2 align=middle>    <b>2 -</b><td>
  4.   <td align=middle><img border=0 alt="<? echo $n2; ?>" src="<? if (file_exists($o2)) echo $o2; else echo $REP_ICONES . "logo.gif"; ?>"></a></td>
  5.   <td class=link2 align=middle>    <b>3 -</b></td>
  6.   <td align=middle><img border=0 alt="<? echo $n3; ?>" src="<? if (file_exists($o3)) echo $o3; else echo $REP_ICONES . "logo.gif"; ?>"></a></td>


 
On remarque que, pour le premier joueur, j'ai viré le test du file_exists, pour bien vous omntrer que je ne rêve pas, que le fichier marche bien... Et, pour les deux autres, je suis sûr que les fichiers existent.
 
J'ai testé avec la fonction getcwd() donnée dans un commentaire sur le manuel PHP, mais c'est adapté à mon serveur Apache sous Windows et ça ne marche pas sur le serveur distant (Unix).
 
Que faire???
 
Edit : j'ai réussi à corriger, faudra qu'on m'explique comment mon serveur comprend les raccourcis de répertoires. :/



Réponse à ton EDIT :
Simple, au serveur tu lui dit : le répertoire / du site web corespond au répertoire c:\www du disque dur.
Du coup quand tu fais ton file_exist, il ne cherche pas le fichier dans le bon dossier (il cherche a partir de la racine du disque et pas à partir de la racine du site). Pour qu'il cherche dans le bon répertoire, il faut rajouter la position de la racine du site pour que le file_exist s'y retrouve.
Raison conne mais dure à débugguer quand on le sait pas.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed