un très grand merci a vous pour vos réponses,
j ai appliqué vos exemples et script du mieux que j ai pu mais je ne suis pas douer.
voila ce que j ai réussi a faire.
le fichier index.php avec ce code
<?php
session_start();
$url01 = 'acceuil.php';
$titre01 = 'test_vers_acceuil';
//$_SESSION['choixlang'] =;
//Initialisation de la variable $_GET['lang'].//
if (isset($_GET['lang'])) {
$lang = htmlspecialchars($_GET['lang']);
} else {
$lang = '';
}
//switch qui sert à placer la langue en session, suivant le lien qui a été cliquez//
switch ($lang) {
case "FR":
$_SESSION['choixlang'] = 'fr';
break;
case "EN":
$_SESSION['choixlang'] = 'en';
break;
}
//Menu par defaut tant que la variable $_SESSION['choixlang'] est vide.//
$choixlangue = "<a href=" . $url01 . '?lang=FR title=' .$titre01 . ">Le site FR</a><br>";
$choixlangue .= "<a href=" . $url01 . '?lang=EN title=' .$titre01 . ">Le site EN</a><br>";
//Lien des deux langues.//
$fr = "<a href=" . $url01 . '?lang=fr title=' . $titre01 .
">texte en français</a>";
$en = "<a href=" . $url01 . '?lang=en title=' . $titre01 .
">texte en anglais</a>";
//Suivant la valeur en session est vide on affiche soit le menu par defaut sinon le lien contraire a celui en session.//
//Donc si il clique sur en c'est le lien fr qui apparait et inversement.//
$lien_langue = ($_SESSION['choixlang'] == 'fr') ? $en : $fr;
$menu = isset($_SESSION['choixlang']) ? $lien_langue : $choixlangue;
echo $menu;
?>
qui appel le fichier acceuil.php
<?php
include ("choix_lang.inc.php"); //SESSION pour le choix de la langue
include ("lien.inc.php"); //fichier de lien pour le report sur plusieurs pages
include ("include.inc.php"); //fichier include avec variable pour le report sur plusieurs pages
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>mon site en deux langues</title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="css/styles.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<body>
<!-- -->
<!-- header begins -->
<div id="header">
<div id="logo">
<h1><a href="#">titre de l article</a></h1>
<h2><a href="#"></a></h2>
<br />
</div>
<div id="menu">
<?php echo $menu_h ?>
</div>
</div>
<div id="main">
<!-- header ends -->
<!-- content begins -->
<div id="top">
<div id="bottom">
<div id="right">
<?php echo $change_langue ?>
<h3>ICI des liens a definir</h3>
<?php echo $menu_v ?>
<h3>Lorem ipsum dolor</h3>
<p>Laoreet dolore magna aliquam erat volutpat.
Exerci tation ullamcorper suscipit lobort ex ea commodo consequat.
Duis autemr in het laoreet dolore magna aliquam erat volutpat.
<br />
<br />
Ut wisi enim ad minim veniam, quis ullamcorper suscipit lobortis
nisl ut commodo consequat. Duis autemr in he
<a href="#">Lire la suite...</a></p>
<br />
</div>
<div id="left">
<h2>
<?php echo TXT_ACCUEIL_INDEX; ?>
</h2><br />
<h4><a href="#">
<br>
</h2><br>
</a></h4><br />
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Suspendisse potenti. Cras leo nibh, aliquet nec, interdum et,
consequat sed, nulla. Praesent nec quam quis augue auctor pulvinar.
</div>
<!--content ends -->
<div id="footer">
</div>
<!--footer begins -->
</div>
</div>
</div>
<!-- footer ends-->
</body>
</html>
menu_h menu_v et change_langue
sont dans le fichier include.inc.php
<?php
//menu de navigation principal horizontal haut
$menu_h = "
<ul><li>
<a href=".$url01.'?lang='.$_SESSION['choixlang']." title=".$titre01.">".URL_MENU_1."</a>
</li><li>
<a href=".$url02.'?lang='.$_SESSION['choixlang']." title=".$titre02.">".URL_MENU_2."</a>
</li><li>
<a href=".$url03.'?lang='.$_SESSION['choixlang']." title=".$titre03.">".URL_MENU_3."</a>
</li><li>
<a href=".$url04.'?lang='.$_SESSION['choixlang']." title=".$titre04.">".URL_MENU_4."</a>
</li></ul>
";
//menu de navigation principal vertical droit
$menu_v = "
<ul><li>
<a href=".$url05.'?lang='.$_SESSION['choixlang']." title=".$titre05.">".URL_MENU_5."</a>
</li><li>
<a href=".$url06.'?lang='.$_SESSION['choixlang']." title=".$titre06.">".URL_MENU_6."</a>
</li><li>
<a href=".$url07.'?lang='.$_SESSION['choixlang']." title=".$titre07.">".URL_MENU_7."</a>
</li><li>
<a href=".$url08.'?lang='.$_SESSION['choixlang']." title=".$titre08.">".URL_MENU_8."</a>
</li><li>
<a href=".$url09.'?lang='.$_SESSION['choixlang']." title=".$titre09.">".URL_MENU_9."</a>
</li></ul>
";
// liens de selection de langue sur page
$change_langue = "
<a href=\"?lang=fr\">
<img border=\"0\" src=\"design/france.jpg\" alt=\"site en francais\" width=\"20\" height=\"20\">
Francais </a>
<br />
<a href=\"?lang=en\">
<img border=\"0\" src=\"design/english.jpg\" alt=\"site in english\" width=\"20\" height=\"20\">
Anglais </a>
";
?>
et le choix de la langue dans choix_langue.inc.php
<?php
//je demarre une session
session_start();
//$lang ='en';//je defini la langue fr pour francais et en pour anglais
$_SESSION['choixlang'] = $_GET['lang'] ;//j ouvre une session "choixlang"
if(isset($_SESSION['choixlang']))
{
// Si la session ["choixlang"] existe
// On recupere la variable pour l'ajouter au choix de fichier
// Attention la variable doit avoir la meme appelation que le debut du nom du fichier
// "fr" => fr_lang.php et "en" => en_lang.php
include('lang/'.$_SESSION['choixlang'].'-lang.php');
//la je teste si c ok par un echo
//echo 'La variable "choixlang" existe et le fichier langue est :' . $_SESSION['choixlang'];
//echo '<br>';
}
else //sinon
{
// Si la session $_SESSION["choixlang"] n'est pas renseignée
// Alors j'inclus la langue par défaut
include('lang/fr-lang.php');
}
?>
la seule chose que je ne comprend pas vraiment c comment je fais pour ne pas avoir ce message
sur le page index.php(lors du 1er chargement)
Code : Tout sélectionner
Notice: Undefined index: choixlang in m:\easyphp1-8\www\cbm-fruk\index.php on line 36
es ce parce que choix lang n est pas déclaré au 1er chargement
si oui, que dois je modifier, j ai tenter plusieurs trucs sans être vraiment sur du résultat
et la je bloque vraiment
d avance merci ;-)