Variabili nel file CSS con PHP
Moderatore: mod Generali
-
- membro Regular
- Messaggi: 117
- Iscritto il: 06/06/2006, 13:34
- Località: Monopoli (BA)
- Contatta:
Variabili nel file CSS con PHP
Ciao a tutti,
vorrei creare dinamicamente un file CSS per inserire delle immagini in base alla lingua.
Ho creato un file con estensione .php e l'ho richiamato dall'html della pagina che lo ospita.
Non riesco però a recuperare la session e quindi la variabile $language in questo file esterno.
Mi sapete dire che codice va inserito? Ho provato session_start() ma genera una session diversa, probabilmente c'è un nome di sessione da recuperare.
Ho provato acneh ad includere application_top.php ma mi da vari errori.
In alternativa dovrò inserire le varie immagini come class differenti e poi chiamare quella giusta direttamente dalla pagina HTML, ma vorrei alleggerire il codice.
Grazie!
Nadia
vorrei creare dinamicamente un file CSS per inserire delle immagini in base alla lingua.
Ho creato un file con estensione .php e l'ho richiamato dall'html della pagina che lo ospita.
Non riesco però a recuperare la session e quindi la variabile $language in questo file esterno.
Mi sapete dire che codice va inserito? Ho provato session_start() ma genera una session diversa, probabilmente c'è un nome di sessione da recuperare.
Ho provato acneh ad includere application_top.php ma mi da vari errori.
In alternativa dovrò inserire le varie immagini come class differenti e poi chiamare quella giusta direttamente dalla pagina HTML, ma vorrei alleggerire il codice.
Grazie!
Nadia
Re: Variabili nel file CSS con PHP
cosa centra la variabile con la session ?
se richiami il css non dovresti aver problemi di sorta
io uso CSS in PHP da tempo e non ho problemi
perché dici che perde la sessione ?
che cosa stai realizzando e cosa dovrebbe fare ?
dacci piu' informazioni magari qualcuno è in grado d'aiutarti
se richiami il css non dovresti aver problemi di sorta
io uso CSS in PHP da tempo e non ho problemi
perché dici che perde la sessione ?
che cosa stai realizzando e cosa dovrebbe fare ?
dacci piu' informazioni magari qualcuno è in grado d'aiutarti
Home page personale http://www.magnino.net
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
-
- membro Regular
- Messaggi: 117
- Iscritto il: 06/06/2006, 13:34
- Località: Monopoli (BA)
- Contatta:
Re: Variabili nel file CSS con PHP
Ciao,
voglio caricare delle immagini diverse a seconda della lingua in uso in quel momento.
Se da una qualsiasi pagina del front view faccio un echo $language; mi restituisce "italiano" oppure "german", ecc.
Vorrei avere questa variabile nel file CSS così da chiamare dinamicamente ad es. l'immagine vetrina_italiano.gif piuttosto che vetrina_german.gif
ma non ci riesco.
Inserendo l'include di application_top nel file ricevo alcuni warning e la variabile mi restituisce sempre "italiano", anche subito dopo aver selezionato una lingua differente.
Immagino che l'informazione della lingua in uso sia registrata nella session, per questo cercavo di richiamarla. Se ci sono altri metodi, a me quel che serve è ottenere il valore corretto di $language.
Grazie!
Nadia
voglio caricare delle immagini diverse a seconda della lingua in uso in quel momento.
Se da una qualsiasi pagina del front view faccio un echo $language; mi restituisce "italiano" oppure "german", ecc.
Vorrei avere questa variabile nel file CSS così da chiamare dinamicamente ad es. l'immagine vetrina_italiano.gif piuttosto che vetrina_german.gif
ma non ci riesco.
Inserendo l'include di application_top nel file ricevo alcuni warning e la variabile mi restituisce sempre "italiano", anche subito dopo aver selezionato una lingua differente.
Immagino che l'informazione della lingua in uso sia registrata nella session, per questo cercavo di richiamarla. Se ci sono altri metodi, a me quel che serve è ottenere il valore corretto di $language.
Grazie!
Nadia
Re: Variabili nel file CSS con PHP
in teoria no, basta che nel css metti
ed il gioco è fatto automaticamente si prende l'immagine giusta
applicationtop non devi chiamarlo, lo chiama gia' il codice PHP della pagina se lo chiami piu' volte è normale che ti dia errore
Codice: Seleziona tutto
vetrina_" . $language . ".gif
applicationtop non devi chiamarlo, lo chiama gia' il codice PHP della pagina se lo chiami piu' volte è normale che ti dia errore
Home page personale http://www.magnino.net
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
-
- membro Regular
- Messaggi: 117
- Iscritto il: 06/06/2006, 13:34
- Località: Monopoli (BA)
- Contatta:
Re: Variabili nel file CSS con PHP
È la prima cosa che ho provato a fare ma non funziona, la variabile è vuota.maury2ma ha scritto:in teoria no, basta che nel css mettied il gioco è fatto automaticamente si prende l'immagine giustaCodice: Seleziona tutto
vetrina_" . $language . ".gif
applicationtop non devi chiamarlo, lo chiama gia' il codice PHP della pagina se lo chiami piu' volte è normale che ti dia errore
la pagina php principale, ad esempio index.php ha già quelle variabili, ma il CSS è chiamato da index.php come link esterno e non come include, quindi se non gli dico come recuperare $language, per lui è una variabile vuota.
Non voglio inserire lo style come include ma come link esterno perché così lo mette in cache e vale per tutto il sito, come include invece appesantirei tutte le pagine.
Dunque senza application_top $language è vuota
con application_top ricevo vari errori e mi restituisce SEMPRE "italiano" come lingua: http://212.66.104.41/www_maipiusenza_co ... eetDin.php
quel css per ora viene chiamato solo da index.php il sito è infatti un work in progress
http://212.66.104.41/www_maipiusenza_com_new/public/
Idee?
Grazie!
Nadia
Re: Variabili nel file CSS con PHP
La cosa dovrebbe essere piuttosto semplice se usi una sorta di style switcher in base alla lingua corrente.
Qualcosa del genere:
Le regole CSS del foglio di stile alternativo sono applicate dopo il caricamento del CSS di default e andranno a sostituire tutte le regole che non abbiano applicato ad esse la dichiarazione !important.
Buon lavoro.
Saluti
Marcus
Qualcosa del genere:
Codice: Seleziona tutto
<link type="text/css" media="screen" rel="stylesheet" href="main.css" />
<?php if($language == 'it') { ?>
<link type="text/css" media="screen" rel="alternate stylesheet" title="ita" href="it.css" />
<?php } elseif($language == 'en') { ?>
<link type="text/css" media="screen" rel="alternate stylesheet" title="eng" href="en.css" />
....
Le regole CSS del foglio di stile alternativo sono applicate dopo il caricamento del CSS di default e andranno a sostituire tutte le regole che non abbiano applicato ad esse la dichiarazione !important.
Buon lavoro.
Saluti
Marcus
Nuovo pacchetto osCommercePRO (osCPRO) + Modulo Interfacciamento Gestionale Danea.
Visita la demo: http://oscpro.oscommercedev.com/index.php
Visita la demo: http://oscpro.oscommercedev.com/index.php
-
- membro Regular
- Messaggi: 117
- Iscritto il: 06/06/2006, 13:34
- Località: Monopoli (BA)
- Contatta:
Re: Variabili nel file CSS con PHP
Si avevo pensato anche a quello, ma è una soluzione che preferirei evitare. Dovendo fare delle modifiche al CSS mi troverei ogni volta a doverle duplicare per quattro file.marcus ha scritto:La cosa dovrebbe essere piuttosto semplice se usi una sorta di style switcher in base alla lingua corrente.
Per ora ho risolto così:
Mi sono accorta che se in index.php tolgo la stringa osCsid=xxxxxxxxxxxxxxxxxxxxx si perde l'impostazione della lingua, quindi ho richiamato il CSS così:
Codice: Seleziona tutto
<link rel="stylesheet" type="text/css" href="stylesheetDin.php?osCsid=<?php echo $_GET['osCsid']; ?>">
Non mi sembra una soluzione pulitissima, ma almeno funziona.
Grazie a tutti
Nadia
-
- membro Regular
- Messaggi: 117
- Iscritto il: 06/06/2006, 13:34
- Località: Monopoli (BA)
- Contatta:
Re: Variabili nel file CSS con PHP
Anzi, semplificando ulteriormente.
In index.php:
e nel CSS (senza più caricare application_top):
(per poi usarla dove mi serve).
Ciao
Nadia
In index.php:
Codice: Seleziona tutto
<link rel="stylesheet" type="text/css" href="stylesheetDin.php?lin=<?php echo $language; ?>">
Codice: Seleziona tutto
$language = $_GET['lin'];
Ciao
Nadia