Pagina 1 di 1
se utilizzo browser netscape
Inviato: 08/05/2004, 11:52
da Gio978
Ciao a tutti
se utilizzo un browser netscape e/o mozilla mi va direttamente sulla lingua inglese. con IE invece va giustamente sull'italiano.
come correggo questo problema?
Ciao e grazie
p.s. ho installata la 2.2
Inviato: 12/05/2004, 19:57
da Gio978
oh, c'è qualcuno che ha una pallida idea di come debba fare?
ciao ciao
GiO
Inviato: 13/05/2004, 11:25
da southmodel
Apri il Netscape, - Edit - Preferences - Languages - Add.. - Italian - Move Up (finche non diventa la prima lingua della lista) - Ok
Al prossimo accesso nel tuo sito fatto con OS sarà in Italiano....
Inviato: 13/05/2004, 17:10
da Gio978
è gia la prima della lista....
Inviato: 13/05/2004, 17:11
da Gio978
ho paura che devo inserire qualche java script nella homepage del sito
Inviato: 13/05/2004, 19:02
da southmodel
davvero strano, a me funziona perfettamente...... (netscape 7.1)
Inviato: 13/05/2004, 20:12
da Gio978
...e ti dico che dà lo stesso problema da computer differenti con differenti collegamenti a internet sia con netscape che con mozilla
...BOH....
il sito, se ti interessa, è
http://www.tuttostore.com
ciao e grazie
GiO
Inviato: 13/05/2004, 22:50
da marcus
Prima un pò di Teoria.
Il protocollo HTTP, cioè la lingua in cui si parlano Brwoser e Server prevede una variabile detta di ambiente chiamata: 'HTTP_ACCEPT_LANGUAGE' che appunto specifica la lingua parlata dal browser.
Ora la pratica.
OsC da quel bravo programmino che è, gestisce tale variabile!
Dove? nel file catalog/includes/classes/languages.php.
Nel tuo caso la funzione da studiare è:
Codice: Seleziona tutto
function get_browser_language() {
$this->browser_languages = explode(',', getenv('HTTP_ACCEPT_LANGUAGE'));
for ($i=0, $n=sizeof($this->browser_languages); $i<$n; $i++) {
reset($this->languages);
while (list($key, $value) = each($this->languages)) {
if (eregi('^(' . $value . ')(;q=[0-9]\\.[0-9])?$', $this->browser_languages[$i]) && isset($this->catalog_languages[$key])) {
$this->language = $this->catalog_languages[$key];
break 2;
}
}
}
Rinomina questa funzione in function default_get_browser_language()
e inserisci la nuova function get_browser_language() così fatta:
Codice: Seleziona tutto
function get_browser_language() {
$this->browser_languages = 'it'; //FORZA LINGUA ITALIANA
for ($i=0, $n=sizeof($this->browser_languages); $i<$n; $i++) {
reset($this->languages);
while (list($key, $value) = each($this->languages)) {
if (eregi('^(' . $value . ')(;q=[0-9]\\.[0-9])?$', $this->browser_languages[$i]) && isset($this->catalog_languages[$key])) {
$this->language = $this->catalog_languages[$key];
break 2;
}
}
}
Naturalmente così facendo nasce un piccolo problemino sulla cui natura e soluzione ti lascio riflettere ...
Marzullus
Inviato: 14/05/2004, 9:59
da Gio978
caro Marzullus
purtroppo ti devo dire che se avessi scritto in arabo (antico ovviamente...) avrei capito qualcosa in più....
Non sono un programmatore php e non essendo mio il sito e-commerce non posso fare troppe 'prove' e/o giochetti con il codice a rischio che poi qualcosa smetta di funzionare...
ciao
Gio978