Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2359 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Où stocker une variable transitoire ? [Résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Où stocker une variable transitoire ? [Résolu]

n°1672643
Oncle Arch​ibald
Posté le 17-01-2008 à 11:08:48  profilanswer
 

Salut,
Pour empêcher une page de s’afficher hors de son contexte, j’ai placé la routine 'if(top==self){this.location='.';}' qui provoque le retour dans le répertoire (ou ici la racine) du serveur et l’appel automatique du fichier 'index.htm'.
A l’appel de la page incriminée, je voudrais récupérer son url (ex : 'fichierHC=document.URL') et la préserver pour un traitement ultérieur (réaffichage du fichier dans sa frame spécifique).
D’où le titre du topic : Où stocker cette variable ?
 
Vous allez dire il veut 'Charger un fichier dans un jeu de cadres de façon dynamique', c’est vrai mais cette solution m’oblige à utiliser des adresses absolues et je veux maintenir ici l’usage d’adresses relatives au serveur.
Une autre piste serait d’utiliser au chargement de la page ‘index.htm’ la propriété ‘referrer’ qui contient l’url de la page appelante 'à condition que l’appel ait été fait par l'intermédiaire d'un lien' (ce qui n’est pas le cas avec {this.location='.';}).
 
Par avance, merci pour vos conseils.


Message édité par Oncle Archibald le 19-01-2008 à 01:47:33

---------------
« Quand un doigt montre le ciel, l'étourdi regarde le doigt ... »
mood
Publicité
Posté le 17-01-2008 à 11:08:48  profilanswer
 

n°1672662
GordonF_69
Posté le 17-01-2008 à 11:50:50  profilanswer
 

Bon j'ai pas tt compris, mais pour stocker des info sur site le mieux c'est les "cookie" .

n°1673667
Oncle Arch​ibald
Posté le 19-01-2008 à 01:46:51  profilanswer
 

GordonF_69 a écrit :

Bon j'ai pas tt compris, mais pour stocker des info sur site le mieux c'est les "cookie" .

Salut,
C’est pas grave j’ai dû mal m’expliquer. Merci pour ta réponse rapide mais plutôt radicale.
 
La solution consistait à utiliser la propriété 'name' de l’objet 'window' qui reste en mémoire pendant toute la "durée de vie" de la fenêtre du navigateur. Sources : Passation de valeurs JavaScript entre différents documents HTML
 
J’ai donc remplacé « if (top==self) { this.location='.'; } » par :

Code :
  1. // Replacer un fichier hors contexte dans sa frame.
  2. //  Placer cette routine dans les fichiers incriminés ou dans un script.js.
  3. if (!parent.c2)              // tester l’absence du cadre récepteur du fichier.
  4. {
  5.   self.name=location.pathname;// préserver le nom du fichier dans self-name.
  6.   this.location='.';          // supprimer le nom du fichier dans l’url > appel implicite de ‘index.htm’.
  7.   location.replace('.');     // supprimer le lien (incorrect) dans l’historique des pages visitées.
  8. }


 
Il faut ensuite insérer dans le 'frameset' du fichier index.htm l’événement 'onload' qui teste l’état (!vide) de self-name, réattribue au cadre concerné l’url du début et vide self-name.

Code :
  1. <frameset onload="javascript:{if(self.name){frames.c2.location.href=self.name;self.name='';}}" etc.>
  2. <frame class=f0 id="c0" src="banniere.htm" noresize scrolling="no" etc.>
  3. <frame class=f1 id="c1" src="titres.htm" noresize scrolling="no" etc.>
  4. <frame class=f2 id="c2" src="initial.htm" noresize scrolling="auto" etc.>


Et ça marche !  http://onclearchibald.free.fr/VOP50.htm


---------------
« Quand un doigt montre le ciel, l'étourdi regarde le doigt ... »

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Où stocker une variable transitoire ? [Résolu]

 

Sujets relatifs
[Résolu] Problème de character set XML et PHP (SimpleXML)[Résolu] Parsage d'un flux XML, les accents = découpe du texte
Probleme TtabSheet, Focus et ActiveControl... [Resolu][Résolu][Batch] Fermer une fenêtre
[RESOLU][Oracle - SQL] Problème parsing xml[Résolu] PB pour enregistrer des données dans la BSD ACCESS avec VBA
récuperer variable dans script shell avec formulaire PHPScinder en partant de la fin d'un variable.
[résolu] Erreur pour validation W3C à cause d'URLs avec paramètres[Résolu] Includes ne fonctionnent plus depuis session
Plus de sujets relatifs à : Où stocker une variable transitoire ? [Résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR