Modificare css con variabili

intimoviro

Utente Attivo
18 Ago 2009
272
0
0
Salve ragazzi, non so se è fattibile, ma ve lo chiedo lo stesso:D

Si possono passare delle variabili al css?

Cioè voglio creare una tabella nel database che contiene tutte le configurazioni del template.
Vorrei fare in modo che tramite uno script l'utente può modificare a suo piacimento ad esempio i colori di un box.

Grazie
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
24
Roma
alessandro1997.netsons.org
No, CSS non prevede questa funzionalità. Però nulla ti impedisce di modificare delle porzioni di testo nel CSS. Ad esempio puoi dire a PHP di cambiare il codice CSS del file dove trova ${colore} con red. Farlo con delle variabili recuperate dinamicamente dal database è un po' più complicato, ma non impossibile.
 

MarcoGrazia

Utente Attivo
15 Dic 2009
808
16
18
59
Udine
www.stilisticamente.com
E' molto più facile di quanto si creda e la colpa di tutto questo è della poca sicurezza dell'xhtml in fatto di cross site scripting :)
Infatti una delle insicurezze dell'xhtml permette di richiamare pagine di script all'interno di elementi che non dovrebbero avere pagine di script al loro interno.
Mi riferisco ad esempio all'elemento link dell'xhtml, proprio quello che passa ad esempio un foglio di stile alla pagina, nel quale si può inserire nell'attributo href anche una pagina di script.
Capita di vedere ad esempio il costrutto:
Codice:
<link rel="stylesheet" href="cssalternativo.php" />
dove il file php si trova là dove dovrebbe stare un foglio di stile.
E' una tecnica usata da alcuni CMS e che pare funzionare bene per fogli di stile richiamati "ondemand" ma non l'ho mai usata e quindi non so se va passato lo script così con una echo finale che riporta il foglio di stile per intero o con altre tecniche più complicate.
Di certo è che ho notato anche l'uso di parametri passati via get con lo stesso metodo, tutti riferiti allo script che genera il CSS.
Fai delle prove, magari inseriscile qui così che vediamo come può funzionare, tieni presente però che ogni volta che nella pagina vuoi modificare che so un colore, dovrai comunque riaggiornare la pagina, perché il PHP non può scrivere sul DOM come il Javascript.
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
24
Roma
alessandro1997.netsons.org
Provando così:
PHP:
<?php
$color = intval($_GET['color']) ? $_GET['color'] : 1;
$colors = array('black', 'pink', 'red', 'purple', 'yellow');
$color = $colors[$color - 1];

echo <<<EOF
body {
	color: {$color};
}
EOF;
?>
Funziona tutto a dovere. Sembra quindi che basti visualizzare il codice e poi, nella pagina HTML, richiamarlo come un normale foglio CSS.
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Eviterei di passare attributi tramite variabili valorizzate con parametri di imput, la trovo una cosa non sicura. Il pericolo è remoto ma c'è.
 

intimoviro

Utente Attivo
18 Ago 2009
272
0
0
Ho risolto in questo modo e funziona tutto a dovere:D

Ho cambiato l'estensione del css in php.
Poi nel css nella riga iniziale ho inserito questo:

PHP:
<?php
    header("Content-type: text/css; charset: UTF-8");

require_once('../../includes/conf_template.php');
   

?>

Dove conf_template contiene il collegamento al database dove preleva le variabili da includere nel css.

Le variabili nel css le includo in questo modo:

PHP:
<?php echo $box_center; ?>

Grazie

Ciao:fonzie:
 
Discussioni simili
Autore Titolo Forum Risposte Data
C Modificare CSS con Javascript Javascript 1
Dexter_90 [AIUTO] Modificare proprieta Css tramite hover con Javascript Javascript 4
V [WordPress] Come modificare link in tasto menu css WordPress 21
paloppa Bootstrap.min.css modificare il file HTML e CSS 6
A modificare comportamento 'position' in stile CSS Javascript 0
S ricavare valore get e modificare css PHP 3
Dexter_90 [AIUTO] Modificare proprieta Css tramite hover HTML e CSS 4
D Eventi: si possono modificare proprietà css di un el. B tramite un hover su un el. A? HTML e CSS 0
Shyson Modificare codice e creare link PHP 0
J Modificare panorami 360 ps 2020 Photoshop 0
napuleone modificare il contenitore di un div Javascript 2
napuleone modificare il contenitore di un div Javascript 1
D modificare questo codice per inserimento in text e non in tabella jQuery 1
C modificare sito in locale con dreamWeaver HTML e CSS 3
T Modificare ruolo utenti in fase di registrazione E-Commerce 0
M modificare un file .XML da database Sql PHP 13
S Modificare intestazione documento pdf con LO Draw Linux e Software 0
felino Radio button e Bootstrap: modificare il colore di default! HTML e CSS 1
Shyson Modificare funzione php PHP 15
W Modificare il Type di un Input box in javascript ovunque si trovi Javascript 0
F Modificare report di etichette di access con vba MS Access 0
D [PHP] Tabella: modificare direttamente i valori PHP 6
P [Woocommerce] Modificare il Bottone Checkout di Woocommerce in base alla categoria di prodotto E-Commerce 10
Q impossibile modificare un file ....... C/C++ 2
C [HTML] modificare la scritta della copyright HTML e CSS 2
G [PHP] MODIFICARE DATI TABELLA CONTESTUALMENTE PHP 6
Y [PHP] [HTML] Modificare i quadranti PHP 1
A [PHP] Modificare campo database in base alla scelta dell'utente PHP 2
W Non riesco più a modificare i dati di una tabella da phpmyadmin MySQL 0
Y Modificare script php PHP 5
G Fullcalendar: modificare colore testo, backgroup e bordi per tutti gli eventi jQuery 3
Merlina3377 [PHP] modificare file su form immagine thump PHP 1
G [HTML] Modificare ordine dei div in mobile responsive HTML e CSS 5
pfranco [PHP] Modificare pagina web online PHP 9
Shyson Modificare codice jQuery 0
A [Javascript] modificare il contenuto della barra indirizzi di un browser Javascript 1
asevenx modificare lista elementi togliendo l'elemento selezionato jQuery 1
Kolop "Modificare HTML" HTML e CSS 13
K [ASP.Net] Utilizzare e modificare dati linq ASP.NET 0
G Modificare navbar in base allo scroll jQuery 6
R [Photoshop] Modificare luminosità dei bordi in una foto Photoshop 2
A come modificare gli elementi di una lista e gli editText? Sviluppo app per Android 0
A modificare .jar con classe personalizzata Java 9
Mer556 BLOCCATO nel modificare un sito HTML e CSS 3
T modificare un template html5 HTML e CSS 6
B Modificare sorgente di pagina HTML e CSS 10
napuleone Modificare attributi di una classe con js Javascript 2
C modificare un rss con php PHP 2
L Modificare dati tabella mysql PHP 2
P modificare mappa sito Javascript 0

Discussioni simili