Categories
Arxius
Etiquetes
acords After Dark Albert Sánchez Piñol Aldous Huxley animació Axis of Awesome batxillerat Bruce Springsteen cançó CSS curt Eduardo Mendoza Egipte estiu evolució Firefox George Orwell Google grub guitarra Haruki Murakami Matilde Asensi OK Go PHP presentació publicitat puntejat Python Selectivitat snippet Spotify stop-motion terminal Tetris time-lapse Tutankamon vaca Vicenç Pagès Jordà WineDelicious!
PHP: Localització d’una pàgina web amb galetes
Un petit codi extret de cryptimg de viciao2k3 per a gestionar els idiomes d’una pàgina web amb PHP.
<?php if($_GET['lang']){ $dir = 'lang/'.strtoupper($_GET['lang']).'.php'; if(!file_exists($dir)) $lang = 'ES'; //Si no existeix posem l'idioma per defecte else{ setcookie('cryptimg',strtoupper($_GET['lang']),(time()+3600*24*30)); //Si existeix, guardem l'idioma en una galeta $lang = strtoupper($_GET['lang']); } }else $lang='ES'; $dir = 'lang/'.$lang.'.php'; require_once($dir); ?>Per a fer les crides a les cadenes de text, es fan amb constants:
Problemes: en realitat això sembla que anirà creant galetes cada cop que accedim a la pàgina i canviem l’idioma, perquè no comprova si la galeta està definida. Per tant, s’hauria de definir un
ifper si existeix la galeta i definir-lo a$diramb la variable$_COOKIE["cryptimg"];, i si no comprovar$_GET['lang']. Es pot automatitzar segons l’idioma del navegador.Actualització: Ho he comprovat i en realitat no va creant galetes, sinó que la modifica.
setcookie()comprova si la galeta existeix i la modifica, i si no existeix la crea, així de simple. Per tant, no hi ha problemes, només es podria automatitzar amb l’idioma del navegador. El que veig que tampoc fa és comprovar si existeix la galeta…