Navhome fait un reset de la langue sélectionnée

Résolu
Dfault
Messages postés
20
Date d'inscription
mardi 6 mai 2014
Statut
Membre
Dernière intervention
17 avril 2020
- 29 mai 2014 à 00:33
Dfault
Messages postés
20
Date d'inscription
mardi 6 mai 2014
Statut
Membre
Dernière intervention
17 avril 2020
- 4 juin 2014 à 22:32
Bonsoir,

Je développe actuellement un site web qui contient la possibilité de sélectionner la langue (PHP), cependant à chaque fois que je clique sur l'icône représentant 'navhome' de la 'navbar', la langue sélectionnée se réinitialise en français. Quelqu'un aurait-il une solution à me proposer.

Merci d'avance

8 réponses

jordane45
Messages postés
35767
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 juillet 2022
358
2 juin 2014 à 00:48
Bonjour,

Comme te l'a suggéré NHenry, l'utilisation des cookies et/ou des sessions est surement préférable.
Et en effet, il est plutot aisé de trouvé des tutos sur leur utilisation sur le net...


Mais bon, voici déjà comment avec les variables de SESSION tu pourrais procéder :

<?php
// Pour l'utilisation des variables de session en PHP:
  session_start();

// Récupération du choix de la langue passée en GET
// via ta liste déroulante.
// On la stocke dans la variable de session
  if(isset($_GET['lan'])){
     $_SESSION['lan'] =  $_GET['lan'] ;
  }

require('_incl/lan_fr.php');
require('_incl/lan_nl.php');
require('_incl/lan_en.php');




$lan =isset($_SESSION['lan'])?$_SESSION['lan']:'FR';
 switch ($lan) {
   case 'FR':
    $TEXT = $TEXT_FR;
    break;
   case 'NL':
    $TEXT = $TEXT_NL;
    break;
   case 'EN':
    $TEXT = $TEXT_EN;
    break;
 }
?>




1
NHenry
Messages postés
14941
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
20 juin 2022
161
29 mai 2014 à 00:41
Ben, en regardant dans ton fichier index.php à la ligne 42 et en remplaçant la valeur 10 par 18, ça devrait passer ...

Plus sérieusement, comment peux-tu penser qu'avec aussi peu d'informations, on puisse t'aider ?
0
Dfault
Messages postés
20
Date d'inscription
mardi 6 mai 2014
Statut
Membre
Dernière intervention
17 avril 2020

Modifié par jordane45 le 2/06/2014 à 00:40
Désolé, je pensais qu'il y avait peut-être un code ou une clé standard à ajouter.

Voici la page de la barre de navigation :

 <?php
require('_incl/lan_fr.php');
require('_incl/lan_nl.php');
require('_incl/lan_en.php');


$lan = isset($_GET['lan']) ? $_GET['lan'] : 'FR';
switch ($lan) {
case 'FR':
$TEXT = $TEXT_FR;
break;
case 'NL':
$TEXT = $TEXT_NL;
break;
case 'EN':
$TEXT = $TEXT_EN;
break;
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" type ="text/css" href="styles/styles.css" />
<title>Un nouveau concept</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=8" />

<meta name="keywords"
 content="blablabla" />

<meta name="description"
 content="Un nouveau concept" />
</head>
<body>
<div id="nav">
<ul>
<li class="navhome"><a href="page1.php"><img src="styles/images/logo.png" img border="0" alt="ALT" id="Logo"/></a></li>
<li><a href="thereview.php"><?php echo($TEXT['review']); ?></a></li>
<li><a href="newconcept.php">le nouveau concept</a></li>
<li><a href="avantages.php">Les Avantages</a></li>
<li><a href="risks.php">Les Risques</a></li>
<li><a href="establishment.php">La Mise en Place</a></li>
<li><a href="contact.php">Contactez-nous</a></li>
</ul>
</div>
<form id="languages">
<select onchange="window.location.href= this.form.URL.options[this.form.URL.selectedIndex].value" name="URL">
<option value="page1.php?lan=FR">Français</option>
<option value="page1.php?lan=NL">Nederlands</option>
<option value="page1.php?lan=EN">English</option>
</select>
</form>
</body>
</html>


Merci d'avance,
0
NHenry
Messages postés
14941
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
20 juin 2022
161
29 mai 2014 à 00:58
Message édité pour ajouter la coloration syntaxique.
Voir ce lien : http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
0
NHenry
Messages postés
14941
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
20 juin 2022
161
29 mai 2014 à 00:59
Bonsoir,

Visiblement tu utilises un paramètre GET pour mémoriser l'information.
Je pense que l'enregistrer dans une session (ou un cookie) serait plus pratique.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Dfault
Messages postés
20
Date d'inscription
mardi 6 mai 2014
Statut
Membre
Dernière intervention
17 avril 2020

1 juin 2014 à 14:29
Bonjour,

Désolé de répondre si tardivement, mais j'étais parti quelques jours. Là je suis d'attaque pour reprendre le développement de mes sites. J'avoue que je suis assez novice, et que j'apprends sur base de bouquins et de sites. Du coup, j'aimerais savoir quelle est la meilleure solution pour développer un site multilingue. Je pensais le faire avec du php (avec code assez simple), mais peut-être je me trompe et il existe d'autre moyens. Dans le cas où ce serait eefectivement du php, où puis-je trouver des codes php pour sites multilingue ?

Aussi, j'utilise CSS pour la partie graphique des sites, mais parfois, souvent même, des codes assez simple de CSS comme le positionnement d'une image, ou la police d'un titre (h1), n'ont aucun effet sur le site. Pourtant je suis persuadé de les avoir codé correctement.

Merci pour votre aide.
0
NHenry
Messages postés
14941
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
20 juin 2022
161
Modifié par NHenry le 1/06/2014 à 16:22
Bonjour,

Je ne contestais pas ta méthode par PHP, mais je te conseillais plutôt d'utiliser une session ou un cookie pour mémoriser la langue plutôt que d'utiliser un paramètre GET.

If a Dalek is a being of pure hate...what happens when Cadence uses her love spell on one?
En VB.NET pensez à activer "Option Explicit" et "Option Strict"
0
Dfault
Messages postés
20
Date d'inscription
mardi 6 mai 2014
Statut
Membre
Dernière intervention
17 avril 2020

1 juin 2014 à 18:44
Merci pour tes messages. Tu connais un site où je peux trouver des codes php pour les méthodes de cookies ou de session ?

Aussi à quoi les problèmes css peuvent-ils être dus. J'ai 1 page css, 1 page pour la navbar et une page d'accueil. Je ne comprends pas pourquoi les liens avec css (font-style, position, ...) ne se font pas toujours ? As-tu par hasard une explication et/ou une solution pour ce genre de problème de novice.

Merci d'avance,
0
NHenry
Messages postés
14941
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
20 juin 2022
161
1 juin 2014 à 19:01
Pour les sessions et les cookies, une simple recherche peut t'aider.
Pour ton pb de CSS, je ne saurais te répondre, pas assez d'info/code.
0
Dfault
Messages postés
20
Date d'inscription
mardi 6 mai 2014
Statut
Membre
Dernière intervention
17 avril 2020

4 juin 2014 à 22:32
Cela fonctionne, merci beaucoup, j essaierai de mieux chercher la prochaine fois ..
0