photo4u.it


Help semplice script php!!

 
Nuovo argomento   Intervieni in questo argomento    Indice del forum -> Off-Topic
Mostra argomento precedente :: Mostra argomento successivo  
Autore Messaggio
Shedar
utente attivo


Iscritto: 06 Dic 2007
Messaggi: 3651
Località: Amena

MessaggioInviato: Dom 22 Feb, 2009 12:07 pm    Oggetto: Help semplice script php!! Rispondi con citazione

Sto preparando la versione multi lingua del mio sito ....e vorrei un redirect automatico all'index corretto in base alla lingua del browser del visitatore.

Ho scritto questo semplicissimo script che funziona perfettamente con explorer .....ma non con firefox. Qualcuno sa perche'? Smile
In particolare con firefox son sempre reindirizzato al secondo link ..."working" ....in pratica ignora l'if.

Codice:
<?php
$l = $_SERVER['HTTP_ACCEPT_LANGUAGE'];

if($l == 'it') {

echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"3; URL=http://indirizzo corretto">";

}


else {

echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"3; URL=http://working">";


}

?>



Grazie! Smile

_________________
Clicca qui' se cerchi manuali di ingranditori ed accessori da camera oscura. || Clicca qui' per un database di immagini fatte con lenti e corpi di vario genere e marca. || Qui' informazioni sulle carte fotografiche in produzione. ||
Qui'
se cerchi manuali di fotocamere o documentazione su accessori.||
Qui'
Per trovare i tempi di sviluppo di ogni pellicola con ogni rivelatore.
Vai ad inizio pagina
Vai a fine pagina
Mostra il profilo utente Galleria utente Invia un messaggio privato Bacheca utente
Straystudio
utente attivo


Iscritto: 24 Ago 2006
Messaggi: 711
Località: Liguria-Versilia

MessaggioInviato: Dom 22 Feb, 2009 3:11 pm    Oggetto: Rispondi con citazione

Questo lo hai messo nella HEAD del Documento, presumo.

Manca la backslash di escape prima del penultimo apice.
Sui server a volte è necessario metterla doppia.

Il problema però potrebbe anche risiedere nella definizione della variabile $l
Prova a tradurla, piazza questo da qualche parte più in basso nel BODY:

Codice:
<?php echo $l ?>


e vediamo cosa ti stampa.
Vai ad inizio pagina
Vai a fine pagina
Mostra il profilo utente Galleria utente Invia un messaggio privato Invia email Bacheca utente
Shedar
utente attivo


Iscritto: 06 Dic 2007
Messaggi: 3651
Località: Amena

MessaggioInviato: Dom 22 Feb, 2009 4:26 pm    Oggetto: Re: Help semplice script php!! Rispondi con citazione

E' vero ....il prob sta proprio nell'interpretazione della variabile. Firefox la legge in modo parecchio diversa da explorer (!!!)

Explorer legge "it" ...o "en" ...
Firefox legge questo: "it-it,it;q=0.8,en-us;q=0.5,en;q=0.3", nel caso il browser sia italiano. Credo ci sia la possibilità di configurare una lingua principale ....e poi una lista di lingue preferite.

Cmq ho risolto esplodendo la variabile in un array e leggendo solo la parte iniziale. Riporto il codice ....magari puo' essere utile ad altri (se al posto di NUMEROSECONDIATTESA si inserisce, ad esempio, 3 ....il redirect avverrà dopo 3 secondi.)

Codice:
<?php
$l = $_SERVER['HTTP_ACCEPT_LANGUAGE'];

$lang = explode("-", $l);
$l = $lang[0];

if($l == 'it') {

echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"NUMEROSECONDIATTESA; URL=http://indirizzo corretto\">";

}


else {

echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"NUMEROSECONDIATTESA; URL=http://working\">";


}

?>



Certo che è un bel fastidio!! Come faccio a sapere se altri browser (safari ad esempio) interpretano la variabile allo stesso modo????
Uff Smile
Non che sia importante (mal che vada PENSO si ritroveranno nella sezione inglese del sito) .....pero' che diamine! Non esiste uno standard??

_________________
Clicca qui' se cerchi manuali di ingranditori ed accessori da camera oscura. || Clicca qui' per un database di immagini fatte con lenti e corpi di vario genere e marca. || Qui' informazioni sulle carte fotografiche in produzione. ||
Qui'
se cerchi manuali di fotocamere o documentazione su accessori.||
Qui'
Per trovare i tempi di sviluppo di ogni pellicola con ogni rivelatore.
Vai ad inizio pagina
Vai a fine pagina
Mostra il profilo utente Galleria utente Invia un messaggio privato Bacheca utente
sottobosco
utente attivo


Iscritto: 19 Gen 2006
Messaggi: 7177
Località: tra i due rami del lago di Como

MessaggioInviato: Lun 23 Feb, 2009 9:05 am    Oggetto: Rispondi con citazione

installa safari e fagli scrivere il contenuto della variabile.....

altrimenti prova in JS:


Codice:
var lang = document.all?navigator.userLanguage:navigator.language;
if (lang == "it")
     self.location="sito italiano";
else
     self.location="sito inglese";




funziona su iexplorer, netscape, opera, firefox...

Ciao

_________________
Attilio
Vai ad inizio pagina
Vai a fine pagina
Mostra il profilo utente Galleria utente Invia un messaggio privato Bacheca utente
Mostra i messaggi a partire da:   
Nuovo argomento   Intervieni in questo argomento    Indice del forum -> Off-Topic Tutti gli orari del forum sono CET (Europa)
Pag. 1 di 1

 
Vai a:  
Non puoi iniziare nuovi argomenti
Non puoi rispondere ai messaggi
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi
Non puoi allegare files in questo forum
Puoi scaricare gli allegati in questo forum



Tutti i contenuti presenti sul sito sono di proprieta' esclusiva degli autori, sono vietate la riproduzione e la distribuzione degli stessi senza previa esplicita autorizzazione.

Visualizza la policy con cui vengono gestiti i cookie.

© 2003, 2016 photo4u.it - contatti - based on phpBB - Andrea Giorgi