Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
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 05/05/2011, 21h15   #1
Candidat au titre de Membre du Club
 
Inscription : novembre 2007
Messages : 89
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 89
Points : 13
Points : 13
Par défaut Vérifier le code retour d'une url

Bonjour à tous,

J'ai une page ou j'affiche des profils (nom prénom photos), le tout avec du c# pour communiquer avec le serveur. Cependant, pour certains profil il n'y a pas de photos mais je n'ai pas aucun moyen de vérifier cela si ce n'est que l'url ne renvoie sur rien.
J'ai réssui à capter l'erreur avec une bidouille javascript
Code :
<img src="url de l'image récupereé" onerror="affiche image par défaut">
le soucis c'est que c'est une erreur global donc en cas d'erreur il m'affiche que la photo par défaut dans toute la page ...

une idée?
cinou01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 21h26   #2
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 806
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 806
Points : 35 803
Points : 35 803
Citation:
Envoyé par cinou01
le soucis c'est que c'est une erreur global donc en cas d'erreur il m'affiche que la photo par défaut dans toute la page ...
Euh... non, le onerror ne s'applique qu'à la balise sur laquelle il est placé.

Il faudrait donc peut-être envisager que l'erreur globale, ce soit toi qui la fasse !
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 21h38   #3
Candidat au titre de Membre du Club
 
Inscription : novembre 2007
Messages : 89
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 89
Points : 13
Points : 13
je sais pas si tu m'as compris mais en gros j'ai ça :

Code :
<img src="image récup serveur" onerror="document.write("<img src="image par defaut">")
Et quand l'image récupéré par la serveur est non valide, et ben seule l'image par défaut s'affiche dans ma page HTML, alors que moi ce que je veux c'est juste qu'elle remplace l'image censée être récupérée.
cinou01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 21h53   #4
Membre Expert
 
Avatar de Watilin
 
Homme Matilin Torre
Étudiant
Inscription : juin 2010
Messages : 679
Détails du profil
Informations personnelles :
Nom : Homme Matilin Torre
Âge : 23
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2010
Messages : 679
Points : 1 202
Points : 1 202
Hmm, pourquoi ne pas vérifier côté serveur la validité de l'image, et renvoyer une balise img en fonction du résultat ?
__________________
Disposition de clavier ergonomique française : Bépo
Watilin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 21h56   #5
Candidat au titre de Membre du Club
 
Inscription : novembre 2007
Messages : 89
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 89
Points : 13
Points : 13
C'est un peu compliqué à expliquer mais en gros le serveur me renvoie toujours une url mais il sait pas si cette url renvoie bien sur une image ou non(image existe ou pas)
cinou01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 22h03   #6
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 806
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 806
Points : 35 803
Points : 35 803
Citation:
Envoyé par cinou01
Code :
<img src="image récup serveur" onerror="document.write("<img src="image par defaut">")
Quelle horreur !!!

Bon sérieusement, il ne faut JAMAIS utiliser document.write()Un document HTML possède, vu du DOM, 2 états. Un état "open" lorsqu'il est en cours de construction et un état "close" lorsqu'il a fini de se charger.

Or la méthode write() se comporte différemment selon ces états.
Si le document est "open", alors write va insérer son (ou ses) paramètres à l'endroit où elle est appelée. Mais si le document est close, alors write va le réouvrir (et donc effacer le contenu de la page) et insérer son (ou ses) paramètre.
Tu notera que la méthode ne prend même pas la peine de refermer le document dans le second cas.

Dans ton exemple, tu ne pourras jamais prévoir à quel moment sera lancé l'événement onerror (ça dépend de choses sur lesquelles tu n'as pas la main) d'où le fait que ton code est horrible !
Utilise plutôt :
Code :
<img src="image récup serveur" onerror="this.src = 'image par defaut'">
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 22h10   #7
Candidat au titre de Membre du Club
 
Inscription : novembre 2007
Messages : 89
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 89
Points : 13
Points : 13
je vais tester ça demain et je te tient au courant mais je pense que c'est ok!

Merci bcp!
cinou01 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 08h59.


 
 
 
 
Partenaires

Hébergement Web