Accueil > Forum > > > > Problème de XmlHttpRequest sous Opera et FF
Problème de XmlHttpRequest sous Opera et FF
mardi 4 décembre 2007 à 15:12:34 |
Problème de XmlHttpRequest sous Opera et FF

ov3rdoze
|
Bonjour à tous.
Je travaille actuellement sur un site dans lequel j'utilise XmlHttpRequest. Je viens de mettre celui-ci en ligne, et je m'aperçoit que ma galerie photo ne fonctionne que sous IE et Safari. Avec Opera ou FF, il ne se passe rien. Cependant, il n'y a aucune erreur dans la console de FF.
Voici mon code :
<script language="javascript" type="text/javascript"> var vitesse = 3000; var timer = false; affImage('', 0, 'Vignettes', 'envoivign'); function acc() { if (vitesse > 1000) vitesse -= 1000; } function ral() { if (vitesse < 10000) vitesse += 1000; } function affImage(racine, img, cible, page) { var xhr; if (window.XMLHttpRequest) xhr = new XMLHttpRequest (); else if (window.ActiveXObject) xhr = new ActiveXObject ('Microsoft.XMLHTTP'); else { alert ("Votre navigateur ne gère pas l'objet XMLHttpRequest.\nVous allez être redirigé(e) vers le portfolio adapté."); document.location.replace("index.php?page=portfolio2"); } var page = 'pages/' + page + '.php'; xhr.open ('POST', page, true); xhr.setRequestHeader ('Content-Type','application/x-www-form-urlencoded'); xhr.setRequestHeader ('Content-Type','charset=iso-8859-1'); //xhr.overrideMimeType('text/html; charset=ISO-8859-1'); xhr.onreadystatechange = function() { if (xhr.readyState == 4) if (document.getElementById){ document.getElementById (cible).innerHTML = xhr.responseText; } } xhr.send("&racine="+racine+"&img="+img); } function Start(img) { document.getElementById("LancDiap").style.display = "none"; document.getElementById("Vignettes").style.display = "none"; document.getElementById("Images").style.display = "none"; document.getElementById("Diap").style.display = "block"; document.getElementById("StopDiap").style.display = "block"; timer = true; lancerDiapo(img); } function Stop() { document.getElementById("Diap").style.display = "none"; document.getElementById("StopDiap").style.display = "none"; document.getElementById("LancDiap").style.display = "block"; document.getElementById("Vignettes").style.display = "block"; document.getElementById("Images").style.display = "block"; timer = false; affImage(document.rep.srep.value, 0, 'Vignettes', 'envoivign'); } function lancerDiapo(img) { if (timer) { affImage(document.rep.srep.value, img, "Diap", "envoiimg"); img++; setTimeout("lancerDiapo(" + img + ")", vitesse); } } </script> <div id="ListeAlbums"> <form name="rep" method="post"> <select id="srep" name="srep" class="Select" onchange="javascript:if(!timer){document.getElementById('Images').innerHTML='';affImage(this.value, 0, 'Vignettes', 'envoivign');}"> <option value="" selected>Toutes les photos</option> <?php foreach ($dir as $tmp){ $a = str_replace("images/photos/","",$tmp); echo "<option value='".$a."'"; if (isset ($racine)) if ($racine == $tmp) echo " selected"; echo ">".$a."</option>"; } ?> </select> </form>
1er problème : Lorsque l'on change la valeur du Select, la fonction affImage doit normalement récupérer une liste de photos qui dépend de la valeur. Ca fonctionne au chargement de la page avec la valeur par défaut, mais pas ensuite lorsqu'on change la selection.
2ième problème : Lorsqu'on lance le diaporama, les images devraient défiler mais au lieu de ça, ça reste bloqué sur la première.
Je pense donc que le problème viens de la fonction affImage qui est appelée dans les 2 cas, mais je ne vois pas d'où cela peut venir. Surtout que cela fonctionne avec certains navigateurs.
Voici également l'URL de la page, si ça peut aider :
[ Lien ]
Merci d'avance
|
|
mardi 4 décembre 2007 à 15:13:30 |
Re : Problème de XmlHttpRequest sous Opera et FF

ov3rdoze
|
C'est la page portfolio qui pose problème...
|
|
mercredi 5 décembre 2007 à 11:42:45 |
Re : Problème de XmlHttpRequest sous Opera et FF
|
mercredi 5 décembre 2007 à 15:57:03 |
Re : Problème de XmlHttpRequest sous Opera et FF

ov3rdoze
|
C'est seulement FireFox et opera qui posent problème.
Mais merci d'avoir regardé.
|
|
jeudi 6 décembre 2007 à 01:59:40 |
Re : Problème de XmlHttpRequest sous Opera et FF

Arto_8000
|
Tu as un problème dans ton script, les requêtes s'effectuent bien, mais retourne toujours le même résultat. C'est probablement un problème de cache. Rajoute ceci au début de ton script PHP et ça devrait règler le problème :
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
En passant si tu veux débogger avec Firefox je te suggère d'utiliser Firebug, ça aide beaucoup surtout pour les requêtes AJAX. J'ai écrit un tutorial sur comment l'utiliser, consulte le au besoin.
http://www.javascriptfr.com/tutoriaux/DEBOGUEUR-AVEC-FIREBUG_768.aspx
|
|
jeudi 6 décembre 2007 à 14:17:23 |
Re : Problème de XmlHttpRequest sous Opera et FF

ov3rdoze
|
Merci pour Firebug, c'est clair que c'est pas mal!!
Après pas mal de recherches, je me suis rendu compte que les valeurs envoyées à la page n'arrivent pas. Je pense donc que le problème vient de :
xhr.send("&racine="+racine+"&img="+img);
mais je comprend pas pourquoi.
racine et img sont des pramètres de la fonction, je les ai mis dans un alert et c'est bien les valeurs attendues. Par contre la page à laquelle j'envoie la requête me dit "undefined variable" pour ces 2 variables. Elle ne les reçoit pas pour une raison qui m'echappe...
|
|
jeudi 6 décembre 2007 à 14:31:28 |
Re : Problème de XmlHttpRequest sous Opera et FF

ov3rdoze
|
Réponse acceptée !
J'ai supprimé la ligne xhr.setRequestHeader ('Content-Type','charset=iso-8859-1'); et ça fonctionne  Si quelqu'un peux m'expliquer...
|
|
Cette discussion est classée dans : style, document, display, xhr, getelementbyid
Répondre à ce message
Sujets en rapport avec ce message
problème de div [ par algori ]
Bonjour,Voilà, mon problème est qu'il se génère une erreur dans le script suivant quand j'essaie de fermer ma checkbox. Je suppose que l'erreur est si
Parade au style.width sous FireFox ? [ par Shibo_Sources ]
Bonjour, je découvre à peine toutes les possibilités qu'offre le javascript ce qui explique mon niveau (je ne me suis pas trompé de section au moins :
code compatible Mozilla et IE [ par salim81 ]
bonjour a tous! j'ai des script javascript qui sont compatible a Mozilla et les meme script en changeant bien sur quelques fonction compatible IE.je c
Propriété display avec IE [ par initnocsib ]
Bonjour,Voici un petit script qui fonctionne nickel sous Firefox, mais pas du tout sous IE function active(n){ document.getElementByI
Probleme du passage d'un script en HTML [ par guillaumedu69 ]
Bonjours à tous.Dsl je ne savait pas ou mettre se post alors je l'ai mis ici. si un admin lui trouve une mailleur place il a cas le deplacer et me dir
Pourquoi ai-je besoin de 2 clicks au départ ? [ par kaizersoze10 ]
Bonsoir a tous ! :D Voila : j'ai une fonction javascript qui fait apparaitre/disparaitre des blocks sur ma page suivant ce qu'on click sur le menu ...
Erreur c00ce56e [ par ov3rdoze ]
Bonjour à tousJe viens de terminer un site dans lequel j'utilise XMLHttpRequest. En local pas de problème. Je viens d'envoyer le site sur le serveur e
probléme d'affichage [ par youzou ]
Salut j'ai un 2 tableau et 2 bouton radio si je coche sur l'un des bouton les 2 tableau seront invisible et inversement si je selectionne l'autre bou
probleme de compatibilité de fonction javascript avec la balise <table> [ par misshasnae ]
slt ts le mondej'ai un petit problème dans le code html de ma page de réservation, svp si quelq'un a une idée repond moi c urgent é merci d'avance.
Remplacement d'une animation flash par une photo via test de plugin [ par benji3rv ]
Bonjour,Mon but comme l'explique assez bien le titre est de, dans un premier temps, faire un test pour savoir si le navigateur de l'internaute intègre
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|