site multilingue
Posté : 20 sept. 2007, 12:56
Bonjour,
tout est dans le titre, je fais ça sur des sessions qui me semble le plus pratique
edit
j'ai conciser mon script
tout est dans le titre, je fais ça sur des sessions qui me semble le plus pratique
<?php
session_start();
if(isset($_SESSION['lang']))
$lang = $_SESSION['lang'];
else
$lang = substr($HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'],0,2);
// si aucune langue n'est déclarée on tente de reconnaitre la langue par défaut du navigateur
// une fois récupéré on inclus le fichier de la langue
if ($lang=='fr')
include('lang/fr-lang.php');
elseif ($lang=='en')
include('lang/en-lang.php');?>
ou je bloque c'est ici pour changer de langue au clic, la session_destroy() me renvoie un avertissement, apparement la variable n'est pas déclarer ou initialisez ?
Code : Tout sélectionner
Warning: session_destroy() [function.session-destroy]: Trying to destroy
uninitialized session in C:\apachefriends\xampp\htdocs\tarik\dossier.php on line 125<?php
function lang_fr() {
session_destroy();
unset($lang);
$_SESSION['lang']='fr';
$lang=$_SESSION['lang']='fr';
echo $lang;
}
function lang_en() {
session_destroy();
unset($lang);
$_SESSION['lang']='en';
$lang=$_SESSION['lang']='en';
echo $lang;
}
?>
<a href=""><?php lang_fr();?></a><a href=""><?php lang_en();?></a>
Merciedit
j'ai conciser mon script
<?php
session_start();
function lang($lang) {
//session_destroy();
//unset($lang);
$_SESSION['lang']=$lang;
$lang=$_SESSION['lang']=$lang;
print $lang;
}
if(isset($_SESSION['lang']))
$lang = $_SESSION['lang'];
else
$lang = substr($HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'],0,2);
// si aucune langue n'est déclarée on tente de reconnaitre la langue par défaut du navigateur
// une fois récupéré on inclus le fichier de la langue
if ($lang=='fr')
include('lang/fr-lang.php');
elseif ($lang=='en')
include('lang/en-lang.php');?>
<div style="position:absolute;left:900px;top:560px;"><a href=""><?php lang('fr');?></a> <a href=""><?php lang('en');?></a></div>?>