Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/11/2011, 22h56   #1
Débutant
 
Inscription : mai 2005
Messages : 1 957
Détails du profil
Informations personnelles :
Localisation : Suisse

Informations forums :
Inscription : mai 2005
Messages : 1 957
Points : 615
Points : 615
Par défaut Comment contrôler l'existence d'une image

Bonjour à tous,

Je pensais que ca allait être simple et ca doit l'être.

Je veux contoler si une image existe. Pour cela j'ai simplemet fait ca mais ca me return toujour false, même si l'image existe réellement
(Attention je n'ai pas tout mis le code, c'est une boucle while qui extract les donnée d'une base de donnée, d'ou le $data_sameCat['pagetitle'].
Y a du MODx aussi...)
Code :
1
2
3
4
5
6
7
 
echo $fileName = '/images/produits/'.$data_sameCat['id'].'-small.jpg';
if(file_exists($fileName)){
		  	echo '<li><a href="[[~'.$data_sameCat['id'].']]" title="'.$data_sameCat['pagetitle'].'"><img src="/images/produits/'.$data_sameCat['id'].'-small.jpg" title="'.$data_sameCat['pagetitle'].'" alt="'.$data_sameCat['pagetitle'].'" /></a></li>';
		  }else{
		 	echo '<li><a href="[[~'.$data_sameCat['id'].']]" title="'.$data_sameCat['pagetitle'].'"><img src="/images/produits/no_image-small.jpg" title="'.$data_sameCat['pagetitle'].'" alt="'.$data_sameCat['pagetitle'].'" /></a></li>';
		  }
__________________
Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!
pierrot10 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/11/2011, 23h00   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 131
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 131
Points : 8 491
Points : 8 491
ton path set sans doute faux, en tout cas sous unix il est faux puisque le premier / c'est le root du disque
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 20/11/2011, 23h24   #3
Débutant
 
Inscription : mai 2005
Messages : 1 957
Détails du profil
Informations personnelles :
Localisation : Suisse

Informations forums :
Inscription : mai 2005
Messages : 1 957
Points : 615
Points : 615
Ha oui e c'est une erreur de ma part car si je fais un echo de $fileName, il me retourne le bon chemin.
C'est dans le post que j'ai changé mon code avec un / devant image.
Même sans ca ne marche pas, même si je mets
http://www.monsite.ch/images/produits/29-small.jpg

ca ne marche pas
__________________
Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!
pierrot10 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/11/2011, 23h38   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 131
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 131
Points : 8 491
Points : 8 491
mais non le file_exists renvoie false donc le chemin est faux, le http n'est pas bon non plus file_exists test les fichiers via le frapper file:// pas http://
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/11/2011, 09h44   #5
Membre Expert
 
Avatar de riete
 
Homme Thierry
NFC & DevWeb
Inscription : avril 2006
Messages : 1 175
Détails du profil
Informations personnelles :
Nom : Homme Thierry
Âge : 51
Localisation : France

Informations professionnelles :
Activité : NFC & DevWeb
Secteur : Bâtiment

Informations forums :
Inscription : avril 2006
Messages : 1 175
Points : 1 366
Points : 1 366
pierrot10,

voilà comment je ferais à ta place
Code :
1
2
3
$Root_Path = "/Le/Chemin/de/la/racine/du/serveur/web";
 
$fileName = $Root_Path.'/images/produits/'.$data_sameCat['id'].'-small.jpg';
riete est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2011, 09h13   #6
Membre actif
 
Avatar de Lordsephiroth
 
Patrick Mingard
Inscription : mai 2006
Messages : 166
Détails du profil
Informations personnelles :
Nom : Patrick Mingard
Âge : 27

Informations forums :
Inscription : mai 2006
Messages : 166
Points : 185
Points : 185
Bonjour,
Je conseille également l'utilisation de $_SERVER['DOCUMENT_ROOT'] qui retourne la racine du site (configuré dans le vhost Apache). Ça permet d'avoir un code qui s'exécute avec des fichiers relatifs, en partant de la racine du site, quel que soit l'emplacement du site sur le disque. Un passage de Windows à Linux (lors d'un déploiement chez un hébergeur par exemple) et donc parfaitement transparent.
Bon courage !
__________________
Always code as if the guy maintaining your application is a violent psychopath!
Site personnel sur la saga Final Fantasy : http://www.final-fantasy.ch
Lordsephiroth est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 22/11/2011, 11h41   #7
Membre Expert
 
Avatar de riete
 
Homme Thierry
NFC & DevWeb
Inscription : avril 2006
Messages : 1 175
Détails du profil
Informations personnelles :
Nom : Homme Thierry
Âge : 51
Localisation : France

Informations professionnelles :
Activité : NFC & DevWeb
Secteur : Bâtiment

Informations forums :
Inscription : avril 2006
Messages : 1 175
Points : 1 366
Points : 1 366
Citation:
Envoyé par Lordsephiroth Voir le message
Je conseille également l'utilisation de $_SERVER['DOCUMENT_ROOT'] qui retourne la racine du site
Bien évidement , j'aurais due le préciser.
riete est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h38.


 
 
 
 
Partenaires

Hébergement Web