Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Decidere il css della pagina, stabilmente fino a nuova scelta

    Un saluto a tutti...
    Ho bisogno di sapere una cosa:
    avete presente la possibilità di cambiare al volo il css di una pagina? Con un js si permette al visitatore della pagina di selezionare una modalità di visualizzazione, poniamo con bg blu o con bg rosso... Un selettore richiama blu.css o rosso.css, a seconda della scelta effettuata...

    Bene, questa cosa però la decide il singolo visitatore della pagina... un altro visitatore che visualizzi la pagina la troverà con il css di default, diciamo così...

    E se invece volessi decidere io amministratore con quale css oggi la mia pagina venga visualizzata dagli utenti?
    Ponaimo che nel mese X voglio che il css da impiegare sia rosso.css, nel mese Y invece voglio che il css impiegato sia blu.css
    Esiste un modo per permettere questa scelta?

    Qualcosa tipo uno scriptino che dica al mio file di stampare in head
    <link rel="stylesheet" type="text/css" href="blu.css" />
    oppure
    <link rel="stylesheet" type="text/css" href="rosso.css" />

    Ho provato a fare così, ma a parte il fatto che mi sono perso magari esiste un modo più "ortodosso" :master:

    Grazie per l'attenzione
    Gianluca
    O saisons, ô châteaux,
    Quelle âme est sans défauts?

    Rimbaud - L'Éternité (1872)

    EsseZeta - VisualWriting | www.essezeta.org

  2. #2
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    Potresti mettere nella tabella utenti un campo per il tipo di css selezionato
    Di default quello che vuoi e poi in base ai dati dell'utente includi uno o l'altro.

    Codice PHP:
    <link rel="stylesheet" type="text/css" href="<?=$utente['css']?>" />
    La vita e' uno switch();

  3. #3
    mmm... grazie dell'interesse,
    ma così otterrei comunque un aspetto "fisso" per ogni utente...

    Il concetto è che chi gestisce il sito dovrebbe avere la possibilità di selezionare quale css utilizzare...
    Un esempio concreto: io aggiorno il sito con un nuovo articolo... se il tono è giocoso metto un css con uno schema colore allegro... se l'articolo è cupo, imposto un css scuro...
    Ma bisognerebbe appunto poter sempre effettuare uno switch...

    uòs èver pòssibol??

    O saisons, ô châteaux,
    Quelle âme est sans défauts?

    Rimbaud - L'Éternité (1872)

    EsseZeta - VisualWriting | www.essezeta.org

  4. #4
    Grazie dell'interessamento a marco 80,
    da quel poco che riesco a capire non so se la direzione è giusta...
    però può essere utile un piccolo aggiustamento di traiettoria...

    Se date un occhiata alla minisceneggiatura in fondo forse ci capiremo meglio...

    (scusate ma io so utilizzare script prefabbricati e so settarli alle mie esigenze... ma per crearli sono di coccio e mi ci vuole il disegno...)

    Spero mi riusciate a dare un'indicazione più precisa...
    ad ogni modo grazie comunque
    gnl

    ecco ciò che vorrei ottenere:
    O saisons, ô châteaux,
    Quelle âme est sans défauts?

    Rimbaud - L'Éternité (1872)

    EsseZeta - VisualWriting | www.essezeta.org

  5. #5
    La "minisceneggiatura" non si vede, comunque stando alla tua richiesta che sembra essere quella definitiva, ovvero: "E se invece volessi decidere io amministratore con quale css oggi la mia pagina venga visualizzata dagli utenti?
    Ponaimo che nel mese X voglio che il css da impiegare sia rosso.css, nel mese Y invece voglio che il css impiegato sia blu.css
    Esiste un modo per permettere questa scelta?
    "

    Molto semplicemente, ti crei i tuoi 12 fogli di stile, uno per ogni mese e li chiami appunto: 1.css, 2.css, 3.css, 4.css, ecc, ecc

    Po ti basta fare così:

    Codice PHP:
    <link rel="stylesheet" type="text/css" href="<?php echo date(n).'.css' ?>" />
    Dove in questo mese (Febbraio), il tutto sarebbe:

    codice:
    <link rel="stylesheet" type="text/css" href="2.css" />

  6. #6
    ...strano che la sceneggiatura non si veda...
    non è altro che un'immagine allegata...
    comunque ho provato anche io con IE e non si vede, ma con Firefox è ok...

    Lo segnalo per gli amministratori del forum... magari c'è un bug...
    non funziona nemmeno se inserisco il link all'immagine nei tag [IMG] + sua chiusura
    http://www.essezeta.altervista.org/s...neggiatura.JPG
    eppure l'immagine è sul mio spazio web, provate pure a digitare sulla barra degli indirizzi


    Tornando alla mia richiesta,
    questa è la minisceneggiatura (ho testato e sembra si veda anche con IE), ora serialkiller capirai che ciò che cerco è un po' differente... (il ambio di css vorrei determinarlo io con un intervento, tipo click su tasto di una form... comunque ti ringrazio ugualmente, e la tua soluzione è già molto interessante)
    Credete che sia possibile (e non troppo complesso) ottenere ciò che cerco?
    Eccolo al link che segue:
    sceneggiatura
    O saisons, ô châteaux,
    Quelle âme est sans défauts?

    Rimbaud - L'Éternité (1872)

    EsseZeta - VisualWriting | www.essezeta.org

  7. #7
    Vorrei discutere questa soluzione che mi ha proposto un tipo in gamba sul forum di Altervista (posso citarlo vero?): ecco il permalink

    Mi proponeva quanto segue:
    Fai così:
    imposta_stile.php

    Codice PHP:
    <?
    $stile 
    $_GET['stile']; // recupero lo stile
    $referer $_SERVER['HTTP_REFERER']; // recupero la pagina da cui arrivavi
    header("Location: $referer");
    setcookie("stile"$stiletime()+43200'/');//imposto il cookie con lo stile
    header("Location: $referer");// reindirizzo
    ?>
    css.php

    Codice PHP:
    <?
    $css
    =$_COOKIE['stile'];// recupero il cookie
    echo " <link rel=\"stylesheet\" type=\"text/css\" href=\"../css/";
    if (!
    $css){
    echo 
    "base/css.css\""// CSS DI BASE
    }else{
    echo 
    $css."/css.css\"";
    }
    echo 
    " />";
    ?>
    In ogni pagina fai nell'header:

    <? include("css.php"); ?>

    E per cambiare stile collegamento a: imposta_stile.php?stile=CARTELLA CONTENENTE CSS.CSS
    Ecco, è QUASI perfetto...
    Mi spiego:
    in pratica con questo metodo, io posso fare uno switch tra i vari css che ho a disposizione, però solo nella mia sessione... (forse sbaglio termine...) Intendo che una volta che ho impostato lo stile_X, col mio browser io vedrò la pagine con lo stile_X, ma se ci si collega un altro... la vedrà con lo stile_base... perchè non ha il coockie...
    insomma non ho determinato la visualizzazione della mia pagina... ho solo determinato la MIA visualizzazione della mia pagina...
    Spero di essere stato chiaro...

    Io vorrei una roba tipo:
    imposta_stile comanda a css.php (che includo in HEAD) di stampare definitvamente un codice che richiami un certo css...
    magari salvandone il valore in un file di testo da dove pescarlo...

    Spero di non aver ingarbugliato troppo il discorso...
    Sono sicuro che si possa fare... ma... ahimè! io sono incapace...

    Faccio un esempio:
    ho provato a modificare uno script che inserisce semplici news in una pagina salvandone il contenuto in un .dat: ho provato a dirgli di scrivere in head la stringa <link rel=\"stylesheet\" ECC... ma ho fatto un casino... e poi è una soluzione "sporca"...

    Qualche idea "ortodossa"?
    O saisons, ô châteaux,
    Quelle âme est sans défauts?

    Rimbaud - L'Éternité (1872)

    EsseZeta - VisualWriting | www.essezeta.org

  8. #8
    La soluzione è stata trovata...
    si tratta di un perfezionamento del metodo precedente...
    nel caso qualcuno fosse interessato... ecco i quattro passi da eseguire:

    1.
    imposta_stile.php

    Codice PHP:
    <?
    $stile 
    $_GET['stile']; // recupero lo stile
    $referer $_SERVER['HTTP_REFERER']; // recupero la pagina da cui arrivavi
    header("Location: $referer");
    setcookie("stile"$stiletime()+43200'/');//imposto il cookie con lo stile
    header("Location: $referer");// reindirizzo
    ?>
    2.
    css.php

    Codice PHP:
    <?php 
    $stile 
    $_GET['stile'];
    If(
    $stile == "rosso")
    {

    $var=fopen("stile.php","w"); // apro stile.php in sola scrittura, i dati persi si cancellano (w)
    fwrite($var" <link rel=\"stylesheet\" ECCETERA ROSSO.CSS"); // scrivo lo stile che voglio adottare
    fclose($var); // chiudo il file
    }
    elseif(
    $stile == "verde")
    {

    $var=fopen("stile.php","w");
    fwrite($var" <link rel=\"stylesheet\" ECCETERA ROSSO.CSS");
    fclose($var);
    }
    else
    {
    $var=fopen("stile.php","w");
    fwrite($var" <link rel=\"stylesheet\" ECCETERA BASE.CSS");
    fclose($var);
    }
    ?>
    3.
    in ogni pagina:

    Codice PHP:
    <? include("stile.php"); ?>
    4.
    E per cambiare stile collegamento a: imposta_stile.php?stile=CARTELLA CONTENENTE CSS.CSS

    BonaAtutti
    :berto:
    O saisons, ô châteaux,
    Quelle âme est sans défauts?

    Rimbaud - L'Éternité (1872)

    EsseZeta - VisualWriting | www.essezeta.org

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.