Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 35
  1. #1

    Cambio foglio di stile con php

    Buonasera a tutti. Un pò di tempo fa avevo creato un sito in cui l'utente poteva cambare a scelta lo stile della pagina. Ora ho ripreso il codice che avevo usato per un altro sito ma non funziona. In pratica io ho messo i fogli di stile alternativi:
    Codice HTML:

    <LINK type="text/css" rel="stylesheet" href="css/stile1.css"> <LINK type="text/css" rel="alternate stylesheet" href="css/stile1.css" title="Default"> <LINK type="text/css" rel="alternate stylesheet" href="css/stile2.css" title="Stile2"> <LINK type="text/css" rel="alternate stylesheet" href="css/stile3.css" title="Stile3"> <LINK type="text/css" rel="alternate stylesheet" href="css/stile4.css" title="Stile4">



    seguiti dal richiamo per i cookie

    Codice PHP:
    <?if(isset($_COOKIE["style"])){
    $style=$_COOKIE["style"];
    print("<link rel=\"stylesheet\" type=\"text/css\" href=\"$style.css\"\n");
    }
    else
    print("<link rel=\"stylesheet\" type=\"text/css\" href=\"default.css\"\n");
    ?>


    e poi i cookie in un'altra pagina:
    Codice PHP:
    <?
    $stile = $_GET['set'];
    $referer = $_SERVER['HTTP_REFERER'];
    header("Location: $referer");
    setcookie("stile", $stile, time()+43200, '/');
    header("Location: $referer");
    ?>
    e ovviamente i fogli di stile nella cartella css.

    Notate qualche errore? Posso usare un'alternativa? A parte quella utilizzata da Alistapart che non mi entra in zucca (non so bene l'inglese).
    Grazie a tutti della pazienza.
    Ciao!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Manca la chiusura del tag

    Codice PHP:
    Codice PHP:
    <?if(isset($_COOKIE["style"])){
    $style=$_COOKIE["style"];
    print(
    "<link rel=\"stylesheet\" type=\"text/css\" href=\"$style.css\"\n");
    }
    else
    print(
    "<link rel=\"stylesheet\" type=\"text/css\" href=\"default.css\"\n");
    ?>
    Prima di "\n" ci devi mettere un bel ">"

  3. #3
    Ho provato così
    <?if(isset($_COOKIE["style"])){
    $style=$_COOKIE["style"];
    print("<link rel=\"stylesheet\" type=\"text/css\" href=\"$style.css\" />");
    }
    else
    print("<link rel=\"stylesheet\" type=\"text/css\" href=\"default.css\" />");
    ?>

    ma niente...
    ho fatto una pagina di prova qui

  4. #4
    Usa echo''; apposto di print

  5. #5
    provato ma niente...non so se può essere utile ma se clicco sul link mi viene la pagina 404...

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    errore 404 significa che la pagina non esiste
    In questo caso il tuo script php linka alla pagina "setstyle.php" che non esiste. Devi creare lo script con "setstyle.php"

  7. #7
    Ho provato anche questo ma ancora non cambia lo stile...
    Il bello che io avevo usato lo stesso script su una altro sito e funzionava ma qui no...non capisco proprio cosa sbaglio...

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Attenzione
    Codice PHP:
    $stile $_GET['set'];
    $referer $_SERVER['HTTP_REFERER'];
    header("Location: $referer");
    setcookie("stile"$stiletime()+43200'/');
    header("Location: $referer"); 
    la prima istruzione header("Location: $referer") ti reindirizza prima del setcookie!
    Prova a cancellarla e lasciare solo la seconda;

  9. #9
    Niente ancora...prima di domani vado fuori di testa...

    Ci sarebbe anche la soluzione spiegata da Alistapart ma purtroppo (conoscendo molto poco l'inglese) non riesco ad andare avanti...se qualcuno avesse già provato e sapesse darmi qualche indicazione............

  10. #10
    vuoi usare per forza i cookie o ti van bene pure le sessioni?

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.