IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Modification d'une partie de page sans rechargement de la page

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 362
    Points : 70
    Points
    70
    Par défaut Modification d'une partie de page sans rechargement de la page
    Bonjour à tous,

    Comme vous le savez je développe un site multilingue.

    Dans un premier temps je suis passé uniquement par le HTML5 et le CSS pour le chargement d'une page dans une langue différente. C'était relativement lourd car il fallait un fichier HTML par langue avec la reproduction du code dans sa totalité mais dans chacune des langues du site.

    Ensuite j'ai opté pour le PHP pour ne pas répéter justement la totalité du code dans chaque page et pour diminuer le nombre de page. Résultat je me suis retrouvé avec une page index.php dans laquelle je fais appel à des fichiers PHP via include pour la modification de la langue de mon site.

    Cela marche très bien.

    Le dernier souci a été de proposer au sein de ma page index.php et ce quelque soit la langue affichée pour le site, l'affichage d'un CV qui pouvait être affiché en trois langues différentes.

    Ne trouvant pas de solution satisfaisante je décide de poster un message dans le forum PHP. Comment modifier les données dans une partie de page sans recharger la totalité de la page.

    La réponse suivante m'a été donnée: il faut passer par AJAX.

    Par conséquent je suis allé voir la partie AJAX et il est dit ceci:

    Aujourd'hui ce confort passe, entr'autres, par l'emploi du Javascript et de l'objet XMLHTTPRequest, qui permet d'effectuer des requêtes vers le serveur web de manière asynchrone. Couplé avec quelques scripts PHP, il permet de mettre à jour des informations au sein d'une page sans en recharger l'intégralité du contenu.
    Alors aujourd'hui je me pose la question que faire.

    Après l'apprentissage de HTML et CSS que je maîtrise relativement bien, le démarrage de Javascript et la découverte cette semaine de PHP voilà que l'on me parle d'AJAX.

    Ca va s'arrêter un jour ????

    Plus sérieusement je ne peux intellectuellement et pour une question de temps jongler avec tous ces langages et concepts en si peu de temps. Mon site doit être en ligne mi février.

    J'ai alors une solution à laquelle je pense depuis un certain temps mais qui s'impose vu ce que je viens de dire plus haut.

    L'utilisation de javascript pour gérer le changement de langue du CV.

    Pouvez-vous me dire ce que vous en pensez et sinon si vous avez une autre solution élégante.

    Dans ma page index.php je coderai dans 3 blocs différents mes CV. Un français, le second en anglais et le troisième en néerlandais.

    Au chargement de la page je mettrai chaque bloc à display:none.

    Et lorsque l'utilisateur cliquera sur la langue de son choix via une fonction Javascript je mettre le CV correspondant à display:block.

    Résultat. Toujours dans le même espace, SectionCenter un seul CV occupera la place.


    Bon ben voilà ma solution. Qu'en pensez-vous.

  2. #2
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    Bonjour,

    Ca va s'arrêter un jour ????
    Non ça ne s'arrête jamais , plus tu veux faire complexe plus tu as de langage. PhP, HTML, javascript, css, AJAX, XML, SQL, PL/SQL. Sachant que AJAX est basé sur javascript et XML. Après tu as aussi le flash, le JEE ou encore les applets en java. Pour faire simple c'est un domaine semblable à l'apprentissage des lois, 1 vie ne suffit pas pour tout connaitre :p.

    Maintenant pour ce que tu veux faire, il existe une méthode simple en AJAX. Pour ma part j'utilise un framework : prototype. Qui simplifie grandement la vie, en 5min tu as une page dynamique sans avoir besoin de tout recharger.

    1- Import prototype.js
    2- Définition d'une zone <div id="zoneChargement"></div>
    3- Au clique appel d'une fonction javascript qui fait le transfert d'une page annexe dans la zoneChargement.

    http://amillet.developpez.com/tutori...jax-prototype/

    Si ton cerveau est vraiment saturé, alors oui passer par ce petit truc css est une idée intéressante, cette méthode est utilisée pour faire des boutons design avec changement de couleur (switch de 2 images).
    L'Etat est bien administré quand l'escalier de l'école est usé et que l'herbe croît sur celui du tribunal.

    Modérateur BI

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 362
    Points : 70
    Points
    70
    Par défaut
    Cher Archange,

    Merci de me confirmer la solution AJAX.

    Mais j'ai décidé dans un souci de contrôle de mon code - pour ce premier site en tout cas - de finalement me limiter au HTML5, CSS et Javascript.

    Ta proposition de Framework est intéressante mais demande quand-même que je me plonge dans un nouvel univers et franchement je n'en ai pas le courage.

    D'autant plus que de me rendre compte que PHP n'a pas pu répondre à mes attentes m'a donné un petit coup au moral.

    Je vais donc programmer avec les langages cités ci-dessus. Je les maîtrise relativement bien à part Javascript dont j'ai entamé l'étude il y a 2 semaines.

    Il faut que je sois humble et réaliste. Mettre mon ligne pour mi février m'oblige à trancher comme je le fais ce jour.

    Et puis ma solution donnera l'illusion ce ce dynamisme recherché.

    Bien à toi,

    Ricardo

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    le démarrage de Javascript et la découverte cette semaine de PHP voilà que l'on me parle d'AJAX.
    finalement me limiter au HTML5, CSS et Javascript.
    AJAX, ce n'est pas un langage... C'est juste un acronyme qui veut dire que tu peux, en JavaScript, interroger un serveur pour récupérer des portions de données et / ou effectuer des traitements sans quitter la page.

    Ensuite, nul besoin de framework pour utiliser AJAX (d'autant plus maintenant que IE6 représente moins de 5% de parts de marché).
    Donc "faire de l'AJAX", ce n'est rien d'autre que de parfaire ta connaissance de JavaScript.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2010
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 362
    Points : 70
    Points
    70
    Par défaut
    Bonjour Bovino,

    Tu as raison. Je me suis mal exprimé. Mais bon cela implique d'une part une connaissance suffisante de Javascript et je ne l'ai pas et de s'immerger dans l'Ajax.

    En toute honnêteté je n'ai ni les connaissances suffisantes au jour d'aujourd'hui en Javascript et n'ai pas l'envie de m'investir plus actuellement.

    La raison vous la connaissez le site doit etre en ligne dans près de 3 semaines et j'ai encore pas mal de choses à faire aussi bien niveau graphique, codage, traduction des CV, test du code, analyse par certains recruteurs (connaissances) de l'ergonomie du site, de la facilité de navigation, pertinence des sujet abordés, etc.

    Comme je l'ai dit je reste humble et ne me sens pas capable et le courage d'aller plus loin SURTOUT SURTOUT parce que je désire retrouver un job rapidement dans la finance qui est mon métier.

    L'informatique j'adore mais je goûte au développement web depuis près de 3 mois et j'en veux plus. Mais une chose à la fois.

    En tout cas à tous encore un grand merci pour vos messages quotidiens et critiques diverses.

    Bon je vais me promener. J'ai besoin de me vider la tête aujourd'hui.

    Bon après-midi.

Discussions similaires

  1. Réponses: 9
    Dernier message: 22/08/2011, 21h58
  2. Charger une page sans recharger le menu flash
    Par overtrack dans le forum ActionScript 1 & ActionScript 2
    Réponses: 0
    Dernier message: 27/04/2009, 12h25
  3. Modification d'une partie de la page & Ajax
    Par insane_80 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 21/04/2009, 16h14
  4. Réponses: 6
    Dernier message: 09/10/2008, 19h43
  5. Déplacement dans une page sans recharge
    Par EpOnYmE187 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 30/08/2005, 16h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo