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

Langage PHP Discussion :

Selectionner la langue


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Par défaut Selectionner la langue
    Bonjour,

    je suis en train de faire un site multilingue avec trois images à sélectionner (drapeaux).
    Quand je mets ?lang=fr, ?lang=de ou ?lang=it après le .php dans le naviguateur, il me change bien les langues.

    Maintenant comment faire en sorte que lorsque je clique sur un drapeau, le ?lang=fr se mette à la fin de toutes les urls et s'en souvienne en passant d'une page à l'autre jusqu'à ce qu'une autre langue soit sélectionnée ?

    J'ai un fichier decide-lang.php dont voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
     
      	 if ($_GET['lang']=='fr') {           
     	 include('fr-lang.php');
    	 } 
     
     	 else if ($_GET['lang']=='de') {      
      	 include('de-lang.php');
     	 }
     
      	 else if ($_GET['lang']=='it') {      
      	 include('it-lang.php');
     	 }
     
      	 else {                       
      	 include('fr-lang.php');
      	 }
     
      	 ?>

    Merci d'avance, je n'ai pas trouvé de tuto, ni de script.

  2. #2
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut
    Bonsoir,

    la solution la plus efficace dans ton cas de figure serait de passer par une variable de session

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Par défaut
    merci, oui c'est une bonne solution.

    Mais.. je pense que j'ai pas bien assimilés les sessions car cela ne change rien quand je clique sur les langues. Il faut à chaque nouvelle page cliquer sur l'image pour mettre la page dans la bonne langue.

    voilà ce que j'ai mis pour les sélectionneurs de langue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    	<?php
    session_start();
    $page= $_GET['page'];
    $lang= $_GET['lang'];
    if(!isset($_SESSION['lang']) || $_SESSION['lang']==''){
     $_SESSION['lang'] = "fr";
    }elseif( isset($langue) && $lang!=''){
     $_SESSION['lang'] =$lang;
    }
    ?>	   
    		   <!--select lang -->
    		   <td width="20px"></td><td valign="top">
    		   <a href="?lang=fr" onmouseover="boutonlanga.src = 'images/F-on.gif';" onmouseout="boutonlanga.src = 'images/F.gif';"><img src="../images/F.gif" border="0" align="left" name=boutonlanga /></a>
    		   <a href="?lang=de" onmouseover="boutonlangb.src = 'images/D-on.gif';" onmouseout="boutonlangb.src = 'images/D.gif';"><img src="../images/D.gif" border="0" align="left" name=boutonlangb /></a>
    		   <a href="?lang=it" onmouseover="boutonlangc.src = 'images/I-on.gif';" onmouseout="boutonlangc.src = 'images/I.gif';"><img src="../images/I.gif" border="0" align="left" name=boutonlangc /></a></td>
    		   <td width="40px"></td></tr></table>
    		   <!--fin select lang -->
    voilà le menu:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
               <div id="menu">
                           <a href="index.php" onmouseover="bouton.src = 'images/<?php echo ACCUEIL_MENU_ON; ?>.jpg';" onmouseout="bouton.src = 'images/<?php echo ACCUEIL_MENU; ?>.jpg';"><img src="images/<?php echo ACCUEIL_MENU; ?>.jpg" border=0 name=bouton></a> 
    					   <a href="tirs.php" onmouseover="boutona.src = 'images/<?php echo TIRS_MENU_ON; ?>.jpg';" onmouseout="boutona.src = 'images/<?php echo TIRS_MENU; ?>.jpg';"><img src="images/<?php echo TIRS_MENU; ?>.jpg" border=0 name=boutona></a> 
    					   <a href="societes.php" onmouseover="boutonb.src = 'images/<?php echo SOCIETES_MENU_ON; ?>.jpg';" onmouseout="boutonb.src = 'images/<?php echo SOCIETES_MENU; ?>.jpg';"><img src="images/<?php echo SOCIETES_MENU; ?>.jpg" border=0 name=boutonb></a>
    					   <a href="contact.php" onmouseover="boutonc.src = 'images/<?php echo CONTACT_MENU_ON; ?>.jpg';" onmouseout="boutonc.src = 'images/<?php echo CONTACT_MENU; ?>.jpg';"><img src="images/<?php echo CONTACT_MENU; ?>.jpg" border=0 name=boutonc></a>
    					   <a href="liens.php" onmouseover="boutond.src = 'images/<?php echo LIENS_MENU_ON; ?>.jpg';" onmouseout="boutond.src = 'images/<?php echo LIENS_MENU; ?>.jpg';"><img src="images/<?php echo LIENS_MENU; ?>.jpg" border=0 name=boutond></a>
    					   <a href="newsletter.php" onmouseover="boutone.src = 'images/<?php echo NEWSLETTER_MENU_ON; ?>.jpg';" onmouseout="boutone.src = 'images/<?php echo NEWSLETTER_MENU; ?>.jpg';"><img src="images/<?php echo NEWSLETTER_MENU; ?>.jpg" border=0 name=boutone></a>                   
    			</div>
    merci !

  4. #4
    Membre Expert Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Par défaut
    Citation Envoyé par marycandy Voir le message
    cela ne change rien quand je clique sur les langues. Il faut à chaque nouvelle page cliquer sur l'image pour mettre la page dans la bonne langue.
    tu lis bien "$_SESSION['lang']" pour connaitre la langue à utiliser ?

    je viens aussi de voir une erreur dans le code : tu as écrit "$langue" à la place de "$lang" à un endroit

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2010
    Messages : 88
    Par défaut
    Merci, corrigé mais cela ne résout pas le problème.

    Ne faut-t-il pas que j'ajoute quelque chose vers les liens du menu ?

  6. #6
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    nop,
    faudrait vérifier que tu as bien ton session_start() sur chaque page d'une part
    et ensuite tu utilise quel marqueur pour rechercher la langue dans ton code générale.

    le $lang ou le $_SESSION['lang'] je pense qu'il faudrait voir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if(!isset($_SESSION['lang']) || $_SESSION['lang']=='')
    {
     $_SESSION['lang'] = "fr";
     $lang = $_SESSION['lang'];
    }elseif( isset($langue) && $lang!=''){
     $_SESSION['lang'] =$lang;
    }
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/06/2012, 13h28
  2. [POSTGRESQL et JDBC] la langue de moliere
    Par jah dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 15/05/2003, 12h21
  3. selectionner une partie d'un TImage
    Par bidochon dans le forum Composants VCL
    Réponses: 2
    Dernier message: 20/02/2003, 20h08
  4. [VB6] [FileListBox] Récupérer les éléments sélectionnés
    Par tomnie dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 22/10/2002, 10h11
  5. Changement de langue dynamique (D6 et outils de traduction)
    Par agon dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/09/2002, 17h15

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