[Lugge] Re: script php per inclusione fogli di stile

  • From: "Zingus J. Rinkle" <1999s039@xxxxxxxxxxxxxxxxxx>
  • To: lugge@xxxxxxxxxxxxx
  • Date: Fri, 19 Jul 2002 01:28:18 +0200

On Thu, Jul 18, 2002 at 11:23:58PM +0200, choppoman@xxxxxxxxx dared to write:
> Ciao!
Ciao!
 
> Sto lavorando su delle pagine di un sito realizzato in php.
Anch'io! (ma lo sto facendo mooooooltooooo lentamente...) :-)

> Qualcuno mi può suggerire come includere dei fogli di stile dedicati a 
> seconda del browser (IE o NS) usando uno script in php?
Io! Devi controllare la variabile HTTP_USER_AGENT (che poi e' semplicemente
contenuto nell'header spedito dal tuo browser via http), e visto che php
in queste cose e' molto furbo, te la fornisce gia' pronta come
"$HTTP_USER_AGENT".

Il suo contenuto puo' _sembrare_ dominato da una qualche forma di logica,
ma la pratica (e la seguente webpage) insegna che non e' cosi':
http://www.siteware.ch/webresources/useragents/db.html

In linea generale la prima parola della string andrebbe considerata come
il nome del browser, o meglio, come nel caso di opera, il nome che il
browser vuole che noi crediamo sia il suo.

Potremmo allora parsarla con una sscanf("%s", $HTTP_USER_AGENT, $browser),
quindi.

Ma Guglielmo Cancelli non la pensava affatto cosi'... :-)
ed ha messo un MSIE dopo la parola Mozilla, posto dove rimane tuttora...

Quindi mi sa che nel tuo caso ti tocca fare una cosa cosi':

<head>
[...]
<?php
if (ereg("MSIE",$HTTP_USER_AGENT)) {
        /* explorer */
        echo("<LINK href=\"msie.css\"      rel=\"stylesheet\" 
type=\"text/css\">");
} else {
        /* mozilla/netscape/resto_del_mondo */
        echo("<LINK href=\"mozillone.css\" rel=\"stylesheet\" 
type=\"text/css\">");
}
?>      
</head>

Con due begli stylesheets esterni...

Nota:
ereg() matcha una extended regex.
Se preferisci le perl regex, puoi usare preg_match(), stessi argomenti.

cfr. "String Functions", "Regular Expression Functions" nel manuale php
 
bye
 
zingus
-- 
   __________   __________  _________________________________________ 
   \____     \ /     ____/ |~                                        |
+---\___     ZJR     ___/---+           ZJR stands for               |
|    \_______/ \_______/    |         "Zingus J. Rinkle"             |
|   http://www.as1.da.ru    |         ------- ** -------             |
|           - * -           |(Nobody knows what the "J." stands for) |
|  Antisocial1 e' mezzo su. |________________________________________|
+---------------------------+ icq:164939262                           
<========----------
 
 Cena sociale di fine estate 2002, informazioni
 http://digilander.libero.it/robang/lugge/cena.htm

 Prima di scrivere in m-list per favore leggi il regolamento
 http://www.lugge.net/soci/manifesto.htm#list

 Archivio delle e-mail postate in lista
 http://www.freelists.org/archives/lugge/

----------========>
 
 Incontri in sede: martedì 15:00-18:00 e sabato 9:30-12.30
 -= Ultimo giorno in sede: 16 luglio, chiusura 17.00 =-
 

Other related posts: