Nel mio forum vorrei uno sfondo diverso per ogni giorno della settimana.
Come posso mettere mano al css, che attualmente carica:
codice:background: url('/forum/images/immagine.jpg') no-repeat;
Nel mio forum vorrei uno sfondo diverso per ogni giorno della settimana.
Come posso mettere mano al css, che attualmente carica:
codice:background: url('/forum/images/immagine.jpg') no-repeat;
...a quanto ne so non credo sia possibile con i css...con javascript probabilmente sì ma dovresti guardare nella sezione apposita..
Ma non si potrebbe per esempio caricare un immagine.php, all'interno del quale c'è lo script?
ti serve una soluzione in javascript o in PHP?
Vuoi aiutare la riforestazione responsabile?
Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)
Va bene qualsiasi soluzione!
Ho dato semplicemente un indizio, visto che guardando in giro mi pare d'aver capito che in CSS si può richiamare un file immagine.php, che suppongo al suo interno contenga lo script per determinare quale dei 7 sfondi che avrà a disposizione è quello del giorno!
A mio parere se una cosa è possibile farla sia con PHP sia con javascript, è meglio scegliere php, perchè è lato server, quindi non esistono problemi riguardanti il browser (che ad esempio potrebbe avere JS disattivato), e ci si risparmia molti accorgimenti che altrimenti andrebbero presi.
Riguardo al codice, qui conviene fare, come hai già detto, una pagina php che potrebbe essere questa (da richiamare con un require nella head delle altre pagine):
Lo script prende il giorno numerico della settimana (occhio, si parte dalla domenica, che corrisponde allo 0, fino al sabato, che corrisponde a 6), e genera il CSS con l'url dello sfondo necessario.Codice PHP:
<style type="text/css">
<?php echo('body{background:url(http://www.miosito.it/backgrounds/'.date('w').'.jpg) no-repeat;}'); ?>
</style>
In pratica assegnerai così i nomi delle immagini:
Lunedì 1.jpg
Martedì 2.jpg
Mercoledì 3.jpg
Giovedì 4.jpg
Venerdì 5.jpg
Sabato 6.jpg
Domenica 0.jpg
Personalizza l'url secondo le tue esigenze.
Ciao![]()
La differenza fra la genialità e la stupidità è che la genialità ha i suoi limiti.
Ti ringrazio, grande!
Però c'è un problema: io devo per forza richiamare lo script php nel CSS, quindi temo che il tuo codice non vada bene... potresti correggerlo, gentilmente, sapendo che verrò richiamato dentro al CSS come scritto qui sotto? Ti ringrazio, gentilissimo!
codice:background: url('/forum/images/immagine.php') no-repeat;
Uhm... e non puoi proprio modificare la pagina php?
La differenza fra la genialità e la stupidità è che la genialità ha i suoi limiti.
nel file immagine.php devi inserire uno script che verifichi il giorno della settimana con la funzione date(); e a seconda del risultato ottenuto prelevi ll'img di sfondo gli dai un header...Originariamente inviato da Tom1884
Ti ringrazio, grande!
Però c'è un problema: io devo per forza richiamare lo script php nel CSS, quindi temo che il tuo codice non vada bene... potresti correggerlo, gentilmente, sapendo che verrò richiamato dentro al CSS come scritto qui sotto? Ti ringrazio, gentilissimo!
codice:background: url('/forum/images/immagine.php') no-repeat;
e il gioco è fatto:
crea questo file senza lasciare nessun rigo bianco prima del tag <?php
immagine.php
prova così... e fammi sapereCodice PHP:
<?php
// settiamo la cartella che contiene le img di sfondo
$cartella_sfondi = 'cartella/';
// che giorno è oggi?
// assumerà valori da 0-6
// 0 => domanica, 1=> lunedì, etc etc 6=> sabato
$giorno = date('w');
// scegliamo l'img in base al giorno ottenuto
// NB: evitiamo gli accenti nel nome dei file
// quindi lunedi (senza accento sulla i)
switch($giorno)
{
case 0:
$img = 'domanica.jpg';
break;
case 1:
$img = 'lunedi.jpg';
break;
case 2:
$img = 'martedi.jpg';
break;
case 3:
$img = 'mercoledi.jpg';
break;
case 4:
$img = 'giovedi.jpg';
break;
case 5:
$img = 'venerdi.jpg';
break;
case 6:
$img = 'sabato.jpg';
break;
}
// creiamo l'immagine
$sfondo = @imagecreatefromjpeg($cartella_sfondi.$img);
// mandiamo l'header (in questo caso le img sono tutte jpg)
Header("Content-Type: image/jpeg");
// inviamo il file
imagejpeg($sfondo);
?>
Eh no, non posso proprio... grazie comunque!Originariamente inviato da furbostandby
Uhm... e non puoi proprio modificare la pagina php?
@oly: oggi provo e poi scrivo!