11548 sujets

JavaScript, DOM et API Web HTML5

J'ai un problème:
Je veux charger un fichier XML dans un script javascript mais les deux fichiers ne sont pas dans le même répertoire.
Il me faudrait donc faire :
docXML.load('../mondossier/monfichier.xml');
et bien çà marche pas. Je conçois tout à fait que l'on ne puisse pas indiquer une URL du style "htpp://www...." pour raison de sécurité mais là, je ne vois pas pourquoi çà marche pas.
J'ai pas trouver un seul exemple sur le web autre que
docXML.load("fichierLocal.xml").
Je m'arrache les cheveux...Merci
Modifié par stef32 (20 Oct 2006 - 08:29)
A mon avis, c'est par contrainte de sécurité : on ne peut pas accéder à un fichier qui se trouve à des niveaux inférieurs de l'arborescence, peut-être. JE ne connais pas les détails des mesures de sécurité prises par les différents navigateurs, mais ça pourrait être ça.

Sinon, as-tu essayé avec un sous-dossier ? p.ex. dossier1/fichier.xml ?
C'est justement le cas, c'est un sous-dossier.
(pas dans l'exmple choisi mais dans mon cas réel c'est un sous-dossier: docXML.load("mon_dossier/monfichier.xml");

Dans mon cas , je n'ai qu'un seul fichier (le moteur: index.php , racine du site) avec plein de fichier de configuration (bien rangés et tout et tout). Donc je me vois mal mettre tout mes fichiers XML à la racine de mon site. (comme ils sont générés par du php, je voudrais qu'ils soient rangés dans le dossier qui correspondent à leur traitement, pour des rasions de maintenance de l'application notamment)
Bon ...toujours au même point...
Petit élément supplémentaire si je mets çà , çà marche:
docXML.load("mon_dossier/../monfichier.xml") mais çà reviens à faire docXML("monfichier.sml").
Ce qui veux bien dire qu'il est capable de parcourir l'arborescence de mon serveur.

Je crise...
Curieux, vraiment curieux...

et alors : dossier/../dossier/fichier.xml ?
OK je sais, c'est idiot, mais ne sait-on jamais ?
Je suis idiot:
Pour mes tests, j'avais 2 fichiers xml, un dans le même dossier que mon javascript et l'autre dans mon "vrai" dossier.
Eh bien,..., ils étaient différents, c'est à dire que celui de mon "vrai" dossier n'était pas bien formé.
Une fois le XML formé correctement cela marche beaucoup mieux
Quel nul !!
Merci à toi QuentinC