Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ 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 01/06/2011, 19h44   #1
Candidat au titre de Membre du Club
 
Kevin LE GOFF
Étudiant
Inscription : septembre 2008
Messages : 22
Détails du profil
Informations personnelles :
Nom : Kevin LE GOFF
Âge : 23
Localisation : France, Morbihan (Bretagne)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : septembre 2008
Messages : 22
Points : 13
Points : 13
Envoyer un message via MSN à kekelg2006
Par défaut Transaction XML, find ne trouve pas la balise joueur

Bonjour,

Je suis en train de réaliser un site web pour mon club de hockey.
Je crée une page de présentation des joueurs.
Je stocke différentes infos sur les joueurs dans un fichier xml (joueurs.xml)

Je me sers de Jquerry et d'ajax pour lire le fichier. Le script de lecture marche bien sur mon serveur wamp en localhost. Mais quand je l'upload chez mon hébergeur le script va bien chercher le fichier mais ne trouve pas de correspondance à la balise joueur qui est présente dans le fichier.

Voici le script en question ....
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
 
$.ajax(
		{
				type :"GET",
				url:"./data/joueurs.xml", 
				dataType :"xml", 
				success: function(file) 
				{
 
					fichier =file;
					var i = 0;
					var current;
					//chargement du premier joueur pour initialisation
					// chargment de la premiere fiche joueur 
					var joueurs = $(fichier).find('joueur');
					current = joueurs[0];
 
					alert(joueurs.length);
					alert(current);
					var source =$(current).find('photo').attr("src");
					var nom = $(current).find('nom').text(); var prenom = $(current).find('prenom').text();
					var surnom = $(current).find('surnom').text();
					var numero = $(current).find('numero').text();
					var poste = $(current).find('poste').text();
					var date  =  $(current).find('dateNaissance').text();
					var job = $(current).find('job').text();
					var club = $(current).find('clubs').text();
					var aime = $(current).find('aime').text();
					var aimepa = $(current).find('aimepa').text();
					$('#photoIndividuelle').attr('src', source);
					//remplis la fiche du joueur
					$('.nomPrenom').html(prenom + ' ' + nom);
					$('#numero').html(numero);
					$('#position').html(poste);
					$('#surnom').html(surnom);
					$('#date').html(date);
					$('#job').html(job);
					$('#clubs').html(club);
					$('#aime').html(aime);
					$('#aimepa').html(aimepa);
					$('#ficheJoueur').fadeIn(1000);
 
					//remplissage de la liste de slecetion des joueurs
					for  (i=0; i < joueurs.length; i++) {
						current = joueurs[i];
						var id = $(current).find('id').attr('value');
						var nom = $(current).find('nom').text(); 
						var prenom = $(current).find('prenom').text();
						$('#playerSelection select').append(($("<option></option>").attr('value',id).html(prenom + ' ' + nom)));
					}
				},
				error : function(jqXHR, textStatus, errorThrown) 
				{
					window.alert("erreur : " + textStatus + " " + errorThrown); 
				}
			});
Merci d'avance de votre aide.
kekelg2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 16h35   #2
Membre éclairé
 
Homme
Webmaster
Inscription : septembre 2007
Messages : 376
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Webmaster
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2007
Messages : 376
Points : 377
Points : 377
Salut,

pourrais tu nous donner le retour de la requête AJAX s'il te plait ?
Finality est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 17h21   #3
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonjour

La question de @Finality et qu’elle est le résultat de console.log($(file).find('joueur')); et de console.log($(file).find('joueurs'));
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2011, 13h24   #4
Candidat au titre de Membre du Club
 
Kevin LE GOFF
Étudiant
Inscription : septembre 2008
Messages : 22
Détails du profil
Informations personnelles :
Nom : Kevin LE GOFF
Âge : 23
Localisation : France, Morbihan (Bretagne)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : septembre 2008
Messages : 22
Points : 13
Points : 13
Envoyer un message via MSN à kekelg2006
Voila la reponse en localhost :

pour :
Code :
console.log($(file).find('joueur'));
[joueur, joueur, joueur, joueur, joueur, joueur, joueur, joueur, joueur, joueur, joueur, joueur, joueur]

pour
Code :
 console.log($(file).find('joueurs'));
[joueurs]


J'ai pas de sortie console quand j'upload mon fichier sur le site distant
kekelg2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2011, 21h18   #5
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonsoir

Votre fichier XML et votre page web doivent être sur le même site. Les transferts entre domaines sont bloqués par les navigateurs.

Vérifier les URL.

Essayez avec Firefox ou Chrome, plutôt qu'avec IE
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2011, 02h27   #6
Candidat au titre de Membre du Club
 
Kevin LE GOFF
Étudiant
Inscription : septembre 2008
Messages : 22
Détails du profil
Informations personnelles :
Nom : Kevin LE GOFF
Âge : 23
Localisation : France, Morbihan (Bretagne)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : septembre 2008
Messages : 22
Points : 13
Points : 13
Envoyer un message via MSN à kekelg2006
Les deux fichiers (xml et script) sont bien sur le même site.

Ce que je n'arrive pas à comprendre c'est pourquoi mon script marche avec les deux fichiers sur un serveur local.

Et lorsque que j'upload les deux fichiers (script et fichier.xml) chez mon hébergeur le script ne marche plus.

voici la page concernée :

http://phoenix-vannes.0fees.net/equipe.php

le script marche sous chrome mais pas sous firefox ni IE ...
kekelg2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2011, 10h44   #7
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonjour

Avec le lien vers la page je peux enfin examiner les codes et ce que je découvre n'est pas bon !

IE, Chrome et Firefox signalent des erreurs.

Lorsque j'examine le fichier XML, il se termine par du code non XML ! Ce code n'a absolument rien à faire ici :
Code :
1
2
3
4
5
6
7
8
<div style="text-align: center;"><div style="position:relative; top:0; margin-right:auto;margin-left:auto; z-index:99999">
<!-- Website Analytics Code -->
 <script type="text/javascript" language="javascript" src="http://analytics.hosting24.com/do.php"></script>
 <noscript>
 <a href="http://www.hosting24.com/" target="_blank"><img src="http://analytics.hosting24.com/do.php" alt="web hosting" border="0"></a>
 </noscript>
 <!-- End of Website Analytics Code -->
</div></div>
Votre fichier XML est en "ISO-8859-1" et pas en "utf-8" !

Voir le tutoriel : Passez à l'UTF-8 sans manquer une étape par Josselin Willette

Simplifier la transaction AJAX en utilisant une méthode courte :
Code :
1
2
3
4
5
6
7
8
9
10
11
$.get('./data/joueurs.xml', function(data, textStatus, jqXHR) {
	console.log(data, textStatus, jqXHR);
 
	// succès de la transaction, traité le contenu de data
 
}).error(function(jqXHR, textStatus, errorThrown){
	console.log(jqXHR, textStatus, errorThrown);
 
	// échec de la transaction, gèrer la catastrophe
 
});
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2011, 14h23   #8
Candidat au titre de Membre du Club
 
Kevin LE GOFF
Étudiant
Inscription : septembre 2008
Messages : 22
Détails du profil
Informations personnelles :
Nom : Kevin LE GOFF
Âge : 23
Localisation : France, Morbihan (Bretagne)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : septembre 2008
Messages : 22
Points : 13
Points : 13
Envoyer un message via MSN à kekelg2006
OK pour le code rajoué c'est l'hebergeur qui met sa sur toute les pages ce qui explique enfin pourquoi sa marche en localhost et pas chez l'hébergeur.

Je débute en JQuerry je suppose qu'utiliser la fonction $ajax rajoute un appel de fonction c'est bien pour sa que le code que vous me donnez est plus léger ?


Merci de votre réponse.
kekelg2006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2011, 19h54   #9
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
FAQ jQuery : Comment dois-je formuler une requête AJAX ?
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h11.


 
 
 
 
Partenaires

Hébergement Web