Tutorial sito multilingua: come memorizzare e riutilizzare selezione tramite cookie

neo996sps

Utente Attivo
31 Mag 2007
247
0
0
Trentino
Ciao a tutti,

ho seguito il tutorial di Mr. Webmaster sul sito multilingua. Funziona alla perfezione sennonchè ad ogni cambio pagina l'utente deve necessariamente riselezionare la lingua desiderata.
Io vorrei far si che questa venga memorizzata quindi devo utilizzare un cookie. Il problema è che non ho mai utilizzato i cookie quindi avrei bisogno di una mano:

con questo codice io creo il mio cookie:

PHP:
<?php
setcookie("lingua",".$lang.",time()+3600);
$lang = $_GET['lang'];
if ($lang == FALSE)
{
    $lang = "ita";
}
require("./lang/{$lang}.php");
?>

ma come faccio a far recuperare la variabile $lang contenuta nel cookie lingua ed utilizzarla nelle altre pagine?
 
Devi impostare il cookie successivamente. Modifica così:
PHP:
<?php
if (!isset($_GET['lang'])) {
    $lang = 'ita';
}
else {
    $lang = $_GET['lang'];
}

setcookie('lingua', $lang, time() + 60 * 60 * 24 * 365 * 10);
require("./lang/{$lang}.php");
?>
Per recuperare il valore del cookie userai la variabile:
PHP:
$_COOKIE['lingua']
 
funziona alla grande. Posto lo script modificato in maniera tale che se dovesse servire c'è:

in homepage
PHP:
<?php
if (!isset($_GET['lang'])) {
    $lang = 'ita';
}
else {
    $lang = $_GET['lang'];
}

setcookie('lingua', $lang, time() + 60 * 60 * 24 * 365 * 10);
require("./lang/{$lang}.php");
?>

in tutte le altre pagine
PHP:
<?php
if (!isset($_COOKIE['lingua'])) {
    $lang = 'ita';
}
else {
    $lang = $_COOKIE['lingua'];
}

setcookie('lingua', $lang, time() + 60 * 60 * 24 * 365 * 10);
require("./lang/{$lang}.php");
?>
 

Discussioni simili