Newsgroup: it.comp.www.php
Titolo: google.com come fa con le lingue?

Salve a tutti,
non sapevo se essere OT (e quindi scriverlo) oppure no, ma forse leggendo
come finisce capirete perché non l'ho fatto.
Vado subito alla questione.
Sto facendo un sito per commissione. Richiede 2 lingue(uso una semplice
variabile che si passa tra le pagine, altrimenti ne setta lui una di
default). Ho chiesto: "quale volete di default?".
Mi é stato risposto: "usi php fagliela rilevare automaticamente dal
browser!".
Io esterrefatto ho detto: "non é possibile, php é compilato non
interpretato, al massimo posso vedere se javascript lo fa, ci metto una
doorpage che gli passa la variabile...."
Risposta: "Prendi 
google.com
 come esempio, se sei italiano ti scrive in
italiano, se sei francese...e così via".
Bene, il commissionante é nel campo da più tempo di me, non é un grandissimo
esperto di php (per cui non mi ha potuto dare la formula magica) ma mi ha
fatto sorgere il dubbio. Sono ormai giorni che cerco su documentazioni, NG,
Forum, etc.. ma invano.
Quindi la domanda é intuibile: "
google.com
" usa un linguaggio compilato?
(non credo!!) E ammettiamo che esista una possibilità: "con php esiste il
modo di farlo?". E comunque sia: "avete un'idea di come faccia allora
google.com
 a darti la giusta lingua"?
Grazie in anticipo a tutti e scusatemi ancora se dovessi essere OT!
Mark


Tranquillo, almeno ot o non ot, il tuo è un intervento interessante.
Cooper.
-- 
------------------------------------
BlueWare WebAgency
 [web] 
http://www.blueware.it
 [msn] 
coo...@blueware.it
 [icq] 146781935

 interpretato, al massimo posso vedere se javascript lo fa, ci metto una
Non c'entra il fatto che php sia compilato o meno, trovi il country code
relativo alla lingua con cui è stato localizzato il browser in
$_SERVER['HTTP_ACCEPT_LANGUAGE'].
Il cc lo manda il browser insieme al suo identificativo nella richiesta
http.
In base a quello puoi ridirezionare sulla pagina che ti serve.
Apache incidentalmente usa lo stesso sistema per avere più server virtuali
localizzati.
Google (sempre sia lodato) però credo usi uno dei servizi di ip 'geografico'
visto che 
p.es
. a me mostra la pagina italiana anche da Konqueror in
inglese..

 Esatto, google usa un criterio simile a quello che ti ho citato sopra.
ciò che intendevo é che se un tedesco scrive 
www.google.com
 o 
www.google.de
ha sempre il tedesco come lingua così come un italiano con 
www.google.it
 e
www.google.com
quindi il ".com" da qualche parte si prende la lingua... a meno che non usi
un altro sistema.
So che Google ovviamente non é su un solo server, che sia un sistema di reti
a decretare la questione?
Grazie ancora! :) (c'é sempre da imparare!)
Mark

 inglese..
Immaginavo.
Grazie anche a te.
    Mark

 browser!".
$_SERVER["HTTP_ACCEPT_LANGUAGE"]
Ti da la lista delle lingue che si aspetti il client (browser)
diviso con virgole.
i.e.: it,en-us;q=0.5
quindi ti basta cercare da sinistra a destra la prima lingua che
hai a disposizione e metti le pagine in quella lingua 


Ovvio valuta la provenienza in base all'ip, se l'ip è associato a un server
locato in italia è ragionevole pensare che colui che lo sta usando si trovi
in italia :P
Quando dico ip, mi riferisco non all'utilizzatore (l'utente) ma al provider
dove l'utente si collega. E' assurdo infatti pensare che un italiano si
colleghi con una telefonata internazionale a un provider americano per
navigare su internet.... si collegherà sempre a quello più vicino.
Ma ammettiamo questa ipotesi, l'utente si trova in italia, ma collegandosi
in un provider americano... secondo te... le pagine che visualizzerà saranno
italiane per default? :) Sicuramente no :) Saranno invece americane.


 Apache? 
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4
qui dovresti trovare qualcosa
ciao
Alesi_27

 FR, JP etc, carichi la lingua inglese di default.
Ehm... non credo proprio: se digiti 
www.google.com
 ti rimanda in
www.google.it
.
E se io avessi un sito unico e voglio cambiare lingua in base alla lingua
impostatata nel browser?
Direi che la soluzione corretta e' quella proposta da Febo o da Jurgen con
$_SERVER['HTTP_ACCEPT_LANGUAGE'].
.

 Apache? Eventualmente risiedesse su IIS i valori sarebbero analoghi?
una fonte carina che mi riccordo adesso sono i sorgenti phpMyAdmin che
fa una gestione delle lingue piuttosto articolata. 
Prendi il phpmyadmin, installa e 
studia il codice in libraries/select_lang.lib.php