Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    php per stampare html di link al css

    mi scuso per il post, ho visto che già si è trattato l'argomento ma non ho trovato quel che fa al caso mio (conoscenza di php e programmazione in generale vicina allo zero, quindi non avrei potuto riadattarmi il codice).
    Vorrei fare in modo che php mi restituisca il codice del link al css specifico di ogni browser.
    Quindi dovrei fare lo sniffing del browser, ignorare gli altri link e stampare il codice del css relativo, ma non conosco la sintassi per poterlo fare....
    potreste per favore aiutarmi?
    grazie

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    dovresti scrivere un css unico per ogni browser, cosi risolvi il problema alla radice.

    comunque l'informazione che chiedi dovrebbe essere nella var $_SERVER['USER_AGENT'].

    Ricorda però che questo valore viene impostato dal client e che non è attendibile. Opera ad esempio permette di cambiare questo valore in modo da essere visto come explorer o mozilla o qualsiasi altra cosa.

    ciao

  3. #3
    grazie per avermi risposto gianiaz!!
    ho già i vari css, devo solo fare in modo che il php stampi il codice
    <link href="css.css" rel="stylesheet" type="text/css">
    a seconda del browser in uso...

  4. #4
    codice:
    $brow = get_browser (); 
    if ( $brow->browser == "Netscape" )
    {
      echo '<link href="netscape.css" rel="stylesheet" type="text/css">';
    } 
    elseif ( $brow->browser == "Firefox" )
    {
      echo '<link href="firefox.css" rel="stylesheet" type="text/css">';
    }
    Eccetera eccetera...

  5. #5
    grazie margherite, credo sia proprio quello che volevo fare, provo e faccio sapere i risultati
    PS: è anche possibile determinare la versione del browser (ad esempio ie 4.x 5.x etc?

  6. #6
    ho provato in locale, credo che il browser non venga riconosciuto, quindi il collegamento al css non è stampato

  7. #7
    Tutte le info che ritorna la get_browser le vedi qui:
    http://it.php.net/manual/en/function.get-browser.php

    Cmq l'echo non devi vederlo, lo vedi se nel browser fai "visualizza html"

  8. #8
    intendevo dire che nel codice non c'è il link (quindi vedo la pagina senza stili)
    avevo già visto la funzione get_browser su php.net, ma non riesco a venirne a capo.
    Devo creare l'array e poi impostare gli if, tipo così?
    <?
    function _get_browser()
    {
    $browser = array ( //reversed array
    "OPERA",
    "MSIE", // parent
    "NETSCAPE",
    "FIREFOX",
    "SAFARI",
    "KONQUEROR",
    "MOZILLA" // parent
    );

    $brow = get_browser ();
    if ( $brow->browser == "Netscape" )
    {
    echo '<link href="netscape.css" rel="stylesheet" type="text/css">';
    }
    elseif ( $brow->browser == "Firefox" )
    {
    echo '<link href="firefox.css" rel="stylesheet" type="text/css">';
    }
    ?>
    scusami ma sono impedito!
    grazie

  9. #9
    Dopo la get_browser fai:

    codice:
    print_r($browser);
    Così vedi come é impostato il tuo.

    Nell'esempio che ho fatto testa Netscape e Firefox, se hai ie devi aggiungere un test così:

    codice:
    <?
    brow = get_browser (); 
    if ( $brow->browser == "Netscape" ) 
    { 
    echo '<link href="netscape.css" rel="stylesheet" type="text/css">'; 
    } 
    elseif ( $brow->browser == "Firefox" ) 
    { 
    echo '<link href="firefox.css" rel="stylesheet" type="text/css">'; 
    } 
    elseif ( $brow->browser == "Msie" ) 
    { 
    echo '<link href="ie.css" rel="stylesheet" type="text/css">'; 
    } 
    else
    { 
    echo '<link href="default.css" rel="stylesheet" type="text/css">'; 
    } 
    ?>

  10. #10
    Allora, margherite, ti ringrazio per l'aiuto e per la pazienza.
    Sto provando con firefox ie e netscape 4.
    Adesso funziona soltanto con netscape 4 (non ho altre versioni di netscape installate)
    ho guardato il codice processato da apache ed è corretto(se cambio il css di netscape nello script cambia anche quando faccio il refresh).
    Gli altri browser non vengono riconosciuti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.