rivarol89
Messages postés19Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention22 avril 2010
-
18 juin 2009 à 07:30
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015
-
19 juin 2009 à 16:38
Salut j'ai un probleme qui commence vraiment à m'ennuyer, voici un bout de code tout con :
-----------JS-----------------------------
function testRequest() {
var req = new Ajax.Request('texte.txt',
{
method:"get",
onSuccess:myfunction,
onFailure: function(){ alert('Something went wrong...') }
});
}
function myfunction(req) {
alert(req.responseText);
}
-------------------------------------------------
En gros je récupère ce qu'il y a dans mon fichier texte
sur le serveur.
------------HTML---------------------------------
<li>caca</li>
-------------------------------------------------
le HTML n'a pas vraiment d'importance ici, mais
je le met quand même.
Bref le problème est le suivant :
Tout fonctionne a merveille sous firefox.
Par contre sur IE7, pas moyen ! NADA...
aucun message d'erreur, aucun "alert"...
J'ai recherché sur google, mais je n'ai trouvé aucune explication...
Est ce vraiment une incompatibilité ?
J'ai testé des exemple de ce script sur d'autre sites
avec IE et tout s'est passé sans problème... :-/
Arto_8000
Messages postés1044Date d'inscriptionlundi 7 mars 2005StatutMembreDernière intervention13 juillet 20107 19 juin 2009 à 03:22
C'est en local ou pas ? Les navigateurs gèrent les permissions vers les fichiers un peu différemment. Sur IE, il se peut qu'il bloque carrément la requête vu que c'est en local.
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 18 juin 2009 à 12:57
Bonjour,
tu utilises une bibliothèque de fonctions,
normalement ça évite justement les problèmes de compatibilité !
mais bon, je t'avoue penser que ces bibliothèques devraient
être réservées à quelques experts ( dont je ne suis pas ! )
maintenant, je n'ai peut-être pas bien compris cette phrase :
>>>J'ai testé des exemple de ce script sur d'autre sites
>>>avec IE et tout s'est passé sans problème... :-/
c'est à dire que le même script fonctionne sur certains micros, pas sur d'autres ?
dans ce cas : pas la même version, pas le même paramétrage ... !!!!
mais bon, IE comme les autres signale les erreurs, s'il y en a.
rivarol89
Messages postés19Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention22 avril 2010 19 juin 2009 à 03:09
Lol oui ne t'inquiette pas j'ai vu ton super débat sur firefox et IE dans un autre sujet, et j'ai essayé de chercher les erreurs,
Le fait est que sous firefox, ca marche niquel, je recois mon alert et tout ce qui est sensé s'y trouver.
Sur IE il ne se passe absolument rien, aucun message d'erreur etc...
J'inclus dans l'entête prototype et scriptaculous, scriptaculous marche parfaitement avec Firefox et IE (je parle des effets graphiques).
Ce code se trouve dans un fichier nomé 'personal_lib.js' que j'inclus aussi dans l'entête.
-----------JS-----------------------------
function testRequest() {
var req = new Ajax.Request('texte.txt',
{
method:"get",
onSuccess:myfunction,
onFailure: function(){ alert('Something went wrong...') }
});
}
function myfunction(req) {
alert(req.responseText);
}
-----------------------------------------
maintenant, je n'ai peut-être pas bien compris cette phrase :
>>>J'ai testé des exemple de ce script sur d'autre sites
>>>avec IE et tout s'est passé sans problème... :-/
C'est juste un exemple prit sur developpez qui marche très bien.
Toi personnellement si tu code avec prototype, comment procède tu ? je veux dire
j'ai jamais vraiment apris le javascript, mais comme ca resemble a plein d'autre langages
dans la synthaxe, ca ne me pause aucun problème.
Y a t'il des ordres d'inclusion de JS a respecter ?
peut-on utiliser Ajax.Request à tors et a travers ? ou alors il y a des parametrages judicieux pour chaques explorateur ?
Bref le domaine du web est trop vaste, quand t'en a fini avec un langage, ya un nouveau truc qui aparait.
Sur ce Bonsoir
Vous n’avez pas trouvé la réponse que vous recherchez ?
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 19 juin 2009 à 09:04
tu ne réponds pas à mes questions.
tu me donnes un lien, où ça fonctionne ? comme ça devrait
toujours fonctionner, ça ne sert pas à grand chose.
je demandais : est-ce que ce que tu utilises fonctionne
sur certains micros ou plante toujours ?
si ça marche sur certains micros : paramétrages IE
à regarder là où ça plante
sinon, c'est une mauvaise utilisation de la bibliothèque.
( mais en général, il y a des messages,
il faut activer le deboggage au moins )
>>Toi personnellement si tu code avec prototype, comment procède tu ?
je n'utilise aucune bibliothèques de fonctions
bien trop lourdes à mon goût et bien trop compliquées pour moi
>>j'ai jamais vraiment appris le javascript,
ces bibliothèques ne sont que des fonctions javascript
à mon humble avis, avant d'utiliser, il faut connaître
un minimum le javascript
>>comme ça ressemble a plein d'autre langages
on pourrait PRESQUE dire cela.
>>ça ne me pause aucun problème.
ben si.. la preuve !
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015 19 juin 2009 à 14:22
J'aurais tendance à rejoindre Arto si c'est en local c'est normal la gestion des droits d'accès aux fichiers locaux a été renforcée dans IE7... j'ai eu le pb y a pas très longtemps avec l'appli d'un client... .. .
Sinon vérifies le path du fichier demandé peut y avoir des soucis si tu utilise des liens relatif ou une balise IE est assez chiant avec ça
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 19 juin 2009 à 14:55
>>Oui, IE bloque les fichiers en locaux et retourne l'erreur : "Accès refusée".
depuis quand ???? perso je n'ai aucun souci de ce genre !!!
je pense que vous confondez, et que le problème est ailleurs.
c'est vrai qu'avec IE, on donne plus ou moins d'autorisations,
en local, sur la toile, sur des sites sensibles ou de confiance !
mais en local, c'est par défaut plus "ouvert" que sur la toile, sauf si on modifie
et ce ne sera pas "accès refusé", message que ne semble pas avoir rivarol.
la question essentielle :
est-ce que ce que ça fonctionne
sur certains micros/sites ou ça plante toujours ?
( il me semblait avoir lu, ça baigne chez certains, pas chez tous ?
J'ai testé des exemple de ce script sur d'autre sites
avec IE et tout s'est passé sans problème
)
jdmcreator
Messages postés647Date d'inscriptionsamedi 30 décembre 2000StatutMembreDernière intervention20 juillet 20127 19 juin 2009 à 15:00
Bonjour,
Et bien chaque fois que je teste l'xmlHttpRequest sur IE sur mes différents machines (XP et Vista), il me les bloque chaque fois en me renvoyant l'erreur. Et c'est sûr que si son script ne fonctionne pas, il n'aura pas l'erreur qui elle n'arrive que si le script fonctionne ;)
jdmcreator
Messages postés647Date d'inscriptionsamedi 30 décembre 2000StatutMembreDernière intervention20 juillet 20127 19 juin 2009 à 15:03
A au fait, tu devrais changer ton tableau pour Safari :
Debug / Show JavaScript Console
° modifier Fichier com.apple.Safari.plist situé dans le
répertoire : Support:\Documents and Settings\utilisateur
\Application Data\Apple Computer\Safari\Preferences\
y ajouter <key>IncludeDebugMenu</key>
<true/>
serait plus :
Développement / Afficher la console d'erreur
° Aller dans le menu Édition > Préférences > Avancé et cocher : afficher le menu développement dans la barre des menus
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 19 juin 2009 à 15:10
>>chaque fois que je teste l'xmlHttpRequest sur IE sur mes
différents machines (XP et Vista),
>>il me les bloque chaque fois en me
renvoyant l'erreur
c'est parce que tu fais une erreur justement !
donnes nous donc un exemple ( un extrait, le minimum ! )
d'un truc qui planterait en local et pas sur un site,
et ce, uniquement avec IE !
rivarol89
Messages postés19Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention22 avril 2010 19 juin 2009 à 15:33
Ouai, pour l'instant je teste en local (comme il n'y a pas de php c'est vraiment directement sur le disque dur)
Je vais tenter de passer à travers wamp pour voir, je trouve ca bizare car je suis sûr qu'il n'y a aucune erreur
importante dans le code. Sinon je ne vois pas pourquoi ca fonctionne sur firefox (quoi que les différents navigateurs
nous reservent bien des surprises).
Sinon Bul3, toi tu n'utilise aucun framework ? oO prototype et scriptaculous te feraient gagner beaucoup de temps,
en plus si tu est déjà aisé avec l'objet xmlHttpRequest ca ne sera que du bonheur non ?
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 19 juin 2009 à 15:56
>>pour l'instant je teste en local (comme il n'y a pas de php c'est vraiment directement
>>sur le disque dur) Je vais tenter de passer à travers wamp pour voir,
alors là ??? je ne te suis plus du tout, du tout !?!?!??!
tu testais ajax sans "simulation serveur" ?
( apache et tout le toutim , wamp ou easyphp ou autre ) ?
>>toi tu n'utilise aucun framework ? oO prototype et scriptaculous te feraient gagner beaucoup de temps,
pas au chargement toujours !
plus de 100k pour quelques effets "surfaits"... non merci
>>en plus si tu est déjà aisé avec l'objet xmlHttpRequest ca ne sera que du bonheur non ?
bas... ajax c'est 10 lignes coté client, pas de quoi en faire une montagne non plus !
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 19 juin 2009 à 16:09
je viens seulement de comprendre !!!!!
vous utilisez ajax pour lire un fichier texte !
alors, oui ! avec xmlhttprequest normal, ie n'aime pas
trop ça directement sans passer par wamp ou autres !
j'étais loin du problème posé moi !
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 19 juin 2009 à 16:24
petits essais avec
new ActiveXObject("Microsoft.XMLHTTP");
au lieu de
new XMLHttpRequest();
et ça semble baigner.
donc ça doit dépendre du test pour ajax :
ne pas oublier que IE accepte XMLHttpRequest()
mais ne semble pas apprécier de lire ( enfin, sans rien faire d'autres ? )
un fichier en local pur.
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015 19 juin 2009 à 16:36
>> depuis quand ????
Je l'ai dis plus haut la politique de gestion d'accès des fichiers locaux à été modifiée dans IE7... je parle pas de local http mais d'accès local via le système de fichier... j'ai pas vraiment d'explication j'ai eu le pb au boulot sur une des appli (interne donc accès local au fichiers) que j'ai développé suite à migration du parc vers IE7... j'ai galéré à trouver... c'est pas directement lié au xmlhttp mais plutot à prototype (on utilise une version hybride de prototype)... le seul contournement que j'ai trouvé, pour l'instant, c'est de faire ma requête à "la mano" sans Ajax.Request pour IE mais j'ai pas encore mis le doigt sur la cause du comment du pourquoi... .. .