Rechercher : dans
Par :

[Frames] Un cadre contenant une page externe

Dernière réponse le 30 mai 2007 à 11:30:42 Nuttyweaver, le 29 mai 2007 à 12:46:57 
 Signaler ce message aux modérateurs

Bonjour à tous.
J'ai une problème pour ce qui est d'afficher une page externe dans un des deux cadres de ma page principale, dont voici le code :

<html>
<head>
<title>Ma Page</title>
</head>
<frameset framespacing=0 border=0 frameborder="no" cols="200px,*">
 <frame name="menu" src="./menu.php" scrolling="no" noresize>
 <frame name="contenu" src="./accueil.php" scrolling="auto" noresize>
 <noframes>
  <body lang="fr" >
  <p>Cette page utilise des cadres, mais votre navigateur ne les prend pas en
  charge.</p>
  </div>
  </body>
 </noframes>
</frameset>
</body>
</html>


Je lance donc ce genre de liens
<a href='./accueil.php' target='contenu'>Accueil</a>

à partir du cadre menu et tout fonctionne correctement tant qu'on est en local.
Seulement, voilà. Si j'ai le malheur d'afficher par exemple "http://www.google.fr" dans mon cadre contenu, alors plus aucun de mes liens dans le cadre "menu" ne fonctionnent...
Quelqu'un saurait d'où vient le problème ?

PS: Je dis que plus rien ne fonctionne, mais je parle uniquement sous IE6 bien sûr. En utilisant FireFox tout fonctionne correctement.
Configuration: Windows XP
Firefox 2.0.0.3

Meilleures réponses pour « [Frames] Un cadre contenant une page externe » dans :
Télécharger le contenu d'une page WEB distante VoirIntroduction Installation sous Linux (Ubuntu / Debian) Installation sous Windows Dev C++ Microsoft Visual C++ Petite exploration des fonctions de libcurl Un exemple: télécharger la page d'accueil de CCM Notre fichier source Compilation...
Les Frames VoirPrésentation des frames Grâce à la technologie des frames (en français "cadres") il est désormais possible d'afficher plusieurs pages HTML dans différentes zones (ou cadres). Les frames ne font pas partie de la spécification du HTML 3.x, il faut...
ASP - L'objet Request VoirPrésentation de l'objet Request Le rôle de l'objet Request est de permettre de récupérer la requête HTTP envoyée par le client au serveur, c'est-à-dire qu'il permet en réalité de manipuler l'ensemble des informations envoyées par le navigateur du...

1

dfg, le 29 mai 2007 à 14:13:55

Salut,
quand tu dis "plus aucun lien ne fonctionne", quelle est l'erreur qui se produit, plus précisément ?

Répondre à dfg

2

Nuttyweaver, le 29 mai 2007 à 16:02:37

Quand je clique sur le lien, rien ne se passe...

Répondre à Nuttyweaver

3

gryzzly, le 29 mai 2007 à 16:21:12

<html>
<head>
<title>Ma Page</title>
</head>
pas de <body> !
<frameset framespacing=0 border=0 frameborder="no" cols="200px,*">
<frame name="menu" src="./menu.php" scrolling="no" noresize>
<frame name="contenu" src="./accueil.php" scrolling="auto" noresize> tu les fermes nulle part ces frames ?

<noframes>
<body lang="fr" >
<p>Cette page utilise des cadres, mais votre navigateur ne les prend pas en
charge.</p>
</div> y'a pas de div ouverte, pourquoi la fermer ?
</body> tu la fermes 2 fois ?
</noframes>
</frameset>
</body>
</html>


deja y'a des gros problemes avec cette page ! je regarderais plus en détail ce soir, la jsuis au taf... et puis les frames, c'est à proscrire. y'a des gens uqi pourront pas ivsiter ton site (probleme de resolution d'ecran), y'a des gens qui trouveront ta page sur google, or comme ce sera la page d'une frame, celle ci s'affichera sans menu.

En fait, tu veux pas de visiteurs ?

Répondre à gryzzly

4

dfg, le 29 mai 2007 à 17:34:51

Tiens j'avais même pas remarqué tous ces bugs!
Si tu débutes en html, je te conseille comme le fait remarquer grizzly de faire très attention à la syntaxe du code. Tu peux utiliser un éditeur avec coloration syntaxique comme Pspad qui dispose d'un petit vérificateur html (html-->contrôler le code html) et du plugin 'TiDy' plus puissant qui peut corriger ton code.

Plus tard tu pourras aller valider tes pages sur http://validator.w3.org/ pour voir si elles respectent les normes du domaine.

éditeurs de texte :
http://www.pspad.com/fr/download.php
http://notepad-plus.sourceforge.net/fr/site.htm

Répondre à dfg

5

Nuttyweaver, le 29 mai 2007 à 18:09:38

@ gryzzly> Je crois que l'utilisation de frameset impose de ne pas mettre de <body>...</body>, en tout cas le browser n'affiche rien quand j'en mets.
Et puis pour ce qui est d'utiliser des cadres, de toute façon c'est la page d'accueil d'un site intranet, donc peu importe qu'il soit googlisable ou non.

<html>
<head>
<title>Ma Page</title>
</head>
<frameset framespacing=0 border=0 frameborder="no" cols="200px,*">
<frame name="menu" src="./menu.php" scrolling="no" noresize />
<frame name="contenu" src="./accueil.php" scrolling="auto" noresize />
<noframes>
<body lang="fr" >
<p>Cette page utilise des cadres, mais votre navigateur ne les prend pas en charge.</p>
</body>
</noframes>
</frameset>
</html>


Je viens de virer les deux balises qui trainaient à la fin et j'ai mis des "/" à la fin des balises frame, mais le résultat est le même...

PS dfg : Merci mais j'utilise Notepad++ qui me convient très bien ;)

Répondre à Nuttyweaver

6

gryzzly, le 29 mai 2007 à 18:27:27

Je reviens tout de même sur la googlelisation... au final, ca revient au meme : si un utilisateur du reseau local veut marquer une mage dans ses favoris, il ne le pourra pas justement a cause des frames ! car en mettant dans les favoris une page spécifique, ce sera toujours la page d'accueil qui sera marquée (puisque c'est elle qui appelle les autres pages) !

a toi de voir... je ne sais pas quel sera le contenu ;-)

Répondre à gryzzly

7

dfg, le 30 mai 2007 à 00:08:16

C'est vrai que l'utilisation des div flottantes avec include dynamique est plus propre et accessible, mais peut-être que l'utilisation des frames est peut être plus simple et plus rapide pour des sites orientés application (donc très dynamiques). De plus il me semble qu'on ne devrait pas avoir à faire de favoris sur une appli intranet si l'interface est bien pensée.

Maintenant si t'es au début du projet et si tu assez de temps je te conseille aussi de faire l'effort d'éviter les frames (et les tableaux...) : http://www.phpdebutant.org/article68.php (très bien expliqué).

PS : Notepad++ intègre aussi le plugin TiDy mais - notamment en matière d'HTML - pspad est bien plus complet. Par contre pour de la prog procédurale ou objet il faut le 'code folding' -->np++.
cf. aussi UltraEdit il parait qu'il est ultime mais payant - pas testé.

Répondre à dfg

8

 Nuttyweaver, le 30 mai 2007 à 11:30:42

Bon, mon site étant relativement avancé dans sa construction, je pense que je vais devoir me résoudre à utiliser des frames...
Les sections et sous-sections de mon menu à gauche étant générées en PHP, je crois que je pourrais peut-être contourner ce problème sous IE6 en codant les liens externes sous la forme

<a target='_blank' href='http://www.google.fr'>Rechercher sur Google</a>

pour les ouvrir dans un nouvelle fenêtre au lieu du cadre 'contenu'.
L'idéal serait de trouver une fonction PHP qui m'indique si un lien est externe ou interne ^_^

Répondre à Nuttyweaver