Per fare questo hai diverse possibilità.
1. Scegli la lingua con un parametro GET['lingua'] (o GET['lang'] che fa più fico!!)
2. Una volta che sai la lingua da presentare al tuo utente, la assegni ad una SESSIONE per evitare noie e richiami una variabile che definisce cosa far vedere all'utente.
ad esempio se prendi i dati della lingua dal database allora fai in questo modo:
SELECT * FROM tabella WHERE lingua = '$_SESSION[lingua]'
se prandi i dati da un file, supponiamo che tu abbia salvato i file in diverse cartelle (ita, eng, esp, ecc...)
richiami il file che definisce le variabili o le costanti in questo modo
include('lingua/'.$SESSION['lingua']);
all'interno avrai un file che definisce le costanti della lingua scelta
$var = "Ciao";
oppure
define("CIAO","Ciao");
che richiamerai nel tuo script opportunamente valorizzata.
per la scelta della lingua io in passato ho fatto così:
Codice PHP:
$lingue = array('ita', 'eng', 'esp', 'fra'); # lingue consentite
if (!isset($_SESSION['lingua'])) {
# primo caso, non hai scelto la lingua ma non esiste ancora la sessione
# se NON scegli una lingua inposti la lingua di default
if(empty($_GET['lingua'])) {
$lingua = 'ita' # lingua di default
$_SESSION['lingua'] = $lingua
} else {
# se scegli una lingua, devi controllare che sia corretta con in_array
# e poi imposti le variabili
$lingua = (in_array($lingue,$_GET['lingua']))) ? $_GET['lingua'] : 'ita';
$_SESSION['lingua'] = $lingua;
}
} else {
# secondo caso, se hai già una scelta,
# devi sono controllare che la scelta non venga modificata
if(!empty($_GET['lingua'])) {
$lingua = (in_array($lingue,$_GET['lingua']))) ? $_GET['lingua'] : 'ita';
$_SESSION['lingua'] = $lingua;
}
}
Ti ho commentato bene il codice, spero di essere stato chiaro.
Se hai altri dubbi... chiedi pure!