| > Besoin de conseils sur les frames |
[ Posté par Mr_SATAN ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 25-02-2009 à 12:49 | 5 messages ]
  Bonjour à tous !
Je prépare actuellement une refonte de l'un de mes sites Internet. J'en suis encore au stade du croquis et de la recherche d'informations quant aux techniques que je vais utiliser. J'ai trouver certaines solutions sur EJS.com mais il y en a une pour laquelle j'aurais besoin d'infos supplémentaires.
J'aimerais charger le contenu de mes pages dans des frames. Je sais comment en créer en HTML mais j'ai cru comprendre que c'était complètement Has Been et qu'il existait des moyens plus simples. Pour bien comprendre ce que je cherche à faire voilà un schéma.
Je veux que mon contenu s'affiche dans la partie blanche "zone affichable" sans avoir à recharger à chaque fois le reste de la page. Est-ce possible ? Comment ? Est-ce recommandé ?
J'espère que vous aurez quelques conseils à me filer 
 
|
[ Posté par EricM ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 25-02-2009 à 13:51 | 4255 messages ]
  Bonjour,Mr_SATAN a dit
Je veux que mon contenu s'affiche dans la partie blanche "zone affichable" sans avoir à recharger à chaque fois le reste de la page. Est-ce possible ?
|
| Oui
Avec des frames (effectivement obsolète) ou avec Ajax
Mr_SATAN a dit
Est-ce recommandé ? |
| Non (site non utilisable si JS est désactivé, problèmes de gestion de la navigation, code alourdi, plus difficile à maintenir, n'apporte rien par rapport à une navigation "classique" .......)
Bref, améliore le design de ton site, mais conserve une navigation classique : tu éviteras bien des problèmes et cet aspect ne manquera à personne 
Pense à Ajax, par contre, pour une mise à jour d'un élément de la page sans recharger celle-ci.
A+
[Message édité par EricM le 25-02-2009 à 13:53]
________________ L'échec est le fondement de la réussite.
- Lao Tseu -
|
[ Posté par Mr_SATAN ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 26-02-2009 à 00:58 | 5 messages ]
  Salut Eric ! Merci pour ta réponse !
par contre je n'ai pas tout compris... En gros tu confirmes que les frames HTML sont obsolètes mais ça je le savais déjà Ma question était plutôt "qu'est ce que je pourrais utiliser à la place des frames obsolètes ?". Je n'ai pas besoin de revoir mon design puisqu'à ce stade le design n'est pas fait et se résume à... le fichier .jpg que vous avez vu précédemment 
|
[ Posté par guySk ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 26-02-2009 à 08:46 | 742 messages ]
  En fait ce qu'EricM a dit est très clair, les frames sont obsolètes, par contre pour rafraîchir une partie de la page sans tout recharger, il y a AJAX, mais son inconvénient c'est que si l'utilisateur à bloquer javascript, ton site ne peut plus fonctionner, donc il te dit d'essayer de rester le plus classique possible.
Moi, ce que je te préconise, c'est de t'orienter vers AJAX
________________ a'++'a
|
[ Posté par EricM ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 26-02-2009 à 09:27 | 4255 messages ]
  C'est ça 
Mais si tu pars sur du "full Ajax" (car les avis sont partagés sur ce point, comme tu peux le constater), il faut, à mon avis faire attention à 2 choses principalement :
* est-il envisageable/souhaitable que ton site reste inaccessible pour les utilisateurs n'ayant pas activé JS : si la réponse est négative, il te faut prévoir un mode de navigation alternatif (le classique changement de page, quoi)
* si tu as des <form> à gérer dans les pages qui seront affichées via Ajax, tu ne pourras pas utiliser le fonctionnement le plus classique (mais loin d'être pour autant le meilleur) qui consiste à modifier le innerHTML d'un élément pour en modifier le contenu. Il te faudra impérativement utiliser les fonctions DOM (createElement(), appendChild() ...) car IE a du mal avec les modif de <form> via innerHTML.
Tu en trouveras une partie ICI 
A moins que tu n'ais aucun visiteur qui utilise IE 
A+
________________ L'échec est le fondement de la réussite.
- Lao Tseu -
|
[ Posté par Mr_SATAN ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 26-02-2009 à 15:04 | 5 messages ]
  Salut !
Merci pour votre aide. Ajax... je connaissais pas du tout. Même si je fais des sites depuis quelques années j'apprends sur le tas, donc la solution la plus simple et la plus classique sera la mieux 
On m'a également parlé de la fonction Include de PHP, c'est une bonne idée ?
|
[ Posté par EricM ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 26-02-2009 à 15:43 | 4255 messages ]
 
Mr_SATAN a dit
On m'a également parlé de la fonction Include de PHP, c'est une bonne idée ? |
|
Oui pour certains points ...
Ce n'est qu'un template : tu enregistres dans un fichier à part une partie de ton site qui doit être répété sur toute les pages (menu, logo etc.).
Dans chaque page tu n'a plus qu'à faire un include de ce fichier à l'endroit souhaité.
Avantage : en cas de modif, tu n'a que cette page "template" à modifier, au lieu d'avoir à le faire sur toutes les pages.
Mais le nav', lui, n'y vois que du feu.
Voilà pour le principe.
A+
________________ L'échec est le fondement de la réussite.
- Lao Tseu -
|
[ Posté par macmillenium ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 26-02-2009 à 20:11 | 345 messages ]
  Bonsoir,
Tu peut très bien utiliser AJAX couplé aux include() php comme solution alternative à l'aide des tags <noscript></noscript> si le JavaScript est désactivé.
EricM t'a bien expliqué le principe, maintenant c'est à toi de mixer
________________ Intégrateur/Développeur
|
[ Posté par Mr_SATAN ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 26-02-2009 à 20:18 | 5 messages ]
  Merci beaucoup 
J'ai étudié un peu Ajax, ça me semble un peu complexe pour finalement ne rien m'apporter de bien original par rapport au include. Je pense que je vais aller au plus simple et faire du php, ça me semble plus direct 
[Message édité par Mr_SATAN le 26-02-2009 à 20:19]
|
[ Posté par Mr_SATAN ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 28-02-2009 à 13:01 | 5 messages ]
  Bonjour à tous !
Bon, comme convenu je suis bien parti sur le principe de l'include. Si vous voulez jeter un œil, voilà ma page d'accueil, celle qui est censée rester affichée durant toute la navigation : ICI
Je ne sais pas pourquoi mais j'ai la désagréable impression de m'être planté quelque part... D'une part je n'arrive pas à comprendre comment appeler les pages dans la partie blanche après un clic dans le menu (pour l'instant les pages s'ouvrent indépendamment !) et d'autre part je n'avais pas réfléchis à la possibilité que mes pages incluent pourraient nécessiter un scrolling vertical... (EDIT : problème du scrolling résolu)
Qu'est ce que vous en pensez ? Je suis sur la bonne voie où je dois revoir certains points ?
[Message édité par Mr_SATAN le 28-02-2009 à 13:33]
[Message édité par Mr_SATAN le 03-03-2009 à 14:35]
|
[ Posté par guySk ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 28-02-2009 à 18:46 | 742 messages ]
  Quand tu utilises ce type de template, tes liens doivent pointer vers :
index.php?link=ton_lien
Et ton script php récupère le lien qu'il va inclure dans la partie qui convient.
________________ a'++'a
|
[ Posté par david79 ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 09-09-2011 à 14:23 | 14 messages ]
  merci pour les info, ca m'a beaucoup aide aussi 
|