Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Php in Css

  1. #1

    Php in Css

    Salve, avrei bisogno di un aiutino per quanto riguarda il cambio di stile su un sito.

    Vorrei far sì che ogni utente possa dal sito impostare diversi stili scegliendo fra quelli proposti che poi verranno registrati nei cookies per rimanere nelle visite successive.

    Ho provato con i js, il problema è che vorrei fare in modo che ogni utente possa scegliere di cambiare più di uno stile. In modo ad esempio che possa scegliere lui l'header, o il footer, o lo sfondo ecc...

    Avevo quindi letto riguardo ad un metodo php che permetteva di inserire delle variabili all'interno del codice css ad esempio:
    codice:
    body {background:url($bg);}
    #header {background:url($headerimg);}
    #footer {background:url($footerimg);}
    Il problema è che non so come impostare gli stili nell'head del file php e che attributi assegnare ai diversi link che cambiano lo stile.

    P.S. Non sapevo se postare qui o in CSS, se sono nella sezione sbagliata mi scuso con i moderatori

  2. #2
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    Credo che la sezione sia giusta...
    non potresti usare un banalissimo

    Codice PHP:
    body {background:url(<?php echo $bg?>);}
    #header {background:url(<?php echo $headerimg?>);}
    #footer {background:url(<?php echo $footerimg?>);}
    oppure

    Codice PHP:
    <?php
    echo "
    <style>
    body {background:url("
    .$bg.");}
    #header {background:url("
    .$headerimg.");}
    #footer {background:url("
    .$footerimg.");}
    </style>
    "
    ;
    ?

    Per quanto riguarda i dati hai 3 modi:

    1. Se sono personalizzabili dall'utente, usa delle form in get o post
    2. Usa i database
    3. Salva gli Url in un file di testo (sconsigliato)

    Se non va... posta! ^^

  3. #3
    Mi puoi spiegare il terzo modo?
    Comunque direi di utilizzare un form

    Un'altra cosa: è meglio inserire così il css nell'head, o creare tanti files css tipo header1.css, header2.css, footer1.css, footer2.css ecc.. e poi inserire nell head
    Codice PHP:
    <link href="styles/$header.css" rel="stylesheet" type="text/css" />
    <
    link href="styles/$footer.css" rel="stylesheet" type="text/css" />
    <
    link href="styles/$bg.css" rel="stylesheet" type="text/css" /> 
    Forse per il caricamento è meglio il css nell'head..

  4. #4
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    Allora, fai l'echo del $url nel tag LINK.
    Per quanto riguarda il terzo modo (salvare i dati in un file), è sconsigliato perché gestirlo è difficile e poco pratico, ma così, dovrebbe andare:

    Codice PHP:
    <?php
    // Innanzitutto controlla che l'utente sia loggato.
    // Poi prendo gli url di stile da un file con le impostazioni dell'utente.
    // In questo caso $utente è l'utente loggato e prendo il suo crc32 per il nome del file (sicurezza maggiore :D).

    $fl file("pippo/".crc32($utente.).".imp"); // Leggo il file
    $urls = Array(); // Creo la lista degli url
    foreach($fl as $linea => $contenuto){
      
    $urls[] = $contenuto// Salva gli url nell' array
    }
    printf('
    <link href="styles/%s" rel="stylesheet" type="text/css" /> 
    <link href="styles/%s" rel="stylesheet" type="text/css" /> 
    <link href="styles/%s rel="stylesheet" type="text/css" />
    '
    $urls[0], $urls[1], $urls[2]);
    ?>
    Se dal form, salva lo stile scelto in sessione o cookie e prova:
    Codice PHP:
    <?php
    // Innanzitutto controlla che il cookie/sessione sia settato
    // Leggo $style (la sessione/cookie, nome del file impostazioni)

    $fl file("pippo/".$style.".imp"); // Leggo il file
    $urls = Array(); // Creo la lista degli url
    foreach($fl as $linea => $contenuto){
      
    $urls[] = $contenuto// Salva gli url nell' array
    }
    printf('
    <link href="styles/%s" rel="stylesheet" type="text/css" /> 
    <link href="styles/%s" rel="stylesheet" type="text/css" /> 
    <link href="styles/%s rel="stylesheet" type="text/css" />
    '
    $urls[0], $urls[1], $urls[2]);
    ?>
    Se non ti piace e / o non funziona, posta

  5. #5
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    Per quanto riguarda la creazione dei files tramite form, prova:

    Codice PHP:
    // Innanzitutto controlla che l'utente sia loggato
    // Controllo che il nome del file e il contenuto siano specificati
    if(empty($_POST['file']) || $_POST['cont']) echo "Richiesta non valida!!!";
    else {
      
    $link fopen("pippo/".$_POST['file'].".imp""w"); // Creo il file
      
    fwrite($link$_POST['cont']); // Scrivo il contenuto del file
      
    fclose($link); // Chiudo il file


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.