Bonjour,
J'ai un problème avec $_SESSION.
J'utilise le principe de pagination que j'ai appris sur GrafikArt.fr, à savoir mettre un <?php echo $content; ?> au centre de mon template.php
Je tente de réaliser un système de language, Français / Anglais.
La session est lancée sur mon fichier template, tout marche.
<?php
session_start();
if(isset($_GET'langue']) && $_GET'langue']!=''){
$_SESSION'langue'] = $_GET'langue']; // S'il y a un langage définit, alors on le récupère
}
if( !isset($_SESSION'langue']) || $_SESSION'langue']==''){
$_SESSION'langue'] = "fr"; // S'il n'y a pas de langage définit, alors c'est en francais
}
$FR = $_SESSION'langue'] == 'fr';
?>
Ensuite je n'ai plus qu'a faire:
<?php if($FR){echo 'Accueil';} else{echo 'Home';} ?>
Et ainsi de suite...
Maintenant quand je veux faire un changement de langue sur une page qui est en include sur mon fichier template, il y'a un problème. En faite, le truc marche mais j'ai un message d'erreur.
Soit:
Soit:
Je vous met le début de mon code sur mon fichier index.php:
<?php
if(isset($_GET'langue']) && $_GET'langue']!=''){
$_SESSION'langue'] = $_GET'langue']; // S'il y a un langage définit, alors on le récupère
}
$FR = $_SESSION'langue'] == 'fr';
?>
Mais sinon le truc marche à part l'erreur, je ne comprend pas ...
Désolé d'avoir dérangé, j'ai trouvé la solution.
En faite cela était du au fichier index.php à la racine de mon site, le template.php est include après la page courante, du coup la session était définie après que la page courante soie affiché et ca ne peut donc évidement pas marcher...
Mouai ça revient au même ou presque ...Au pire l'utilisateur n'a qu'a cliquer sur un bouton et il perd 2 secondes...
Et puis s'il n'accepte pas les cookies ca peut poser plus de problème ... ^^