Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di Reiko81
    Registrato dal
    Oct 2009
    Messaggi
    203

    CSS - non trovo l'errore! :(

    Sto provando tutte le combinazioni possibili, ma proprio non riesco a capire perché non funzioni!

    Codice PHP:
    $colore $tipo;
    switch(
    $colore){

        case 
    "varie":
            
    $colore "#ff9900";
            break;
        case 
    "telefilm":
            
    $colore "#660099";
            break;
        case 
    "musica":
            
    $colore "#990066";
            break;
        case 
    "libri":
            
    $colore "#339900";
            break;
        case 
    "film":
            
    $colore "#003399";
            break;
        }

    echo 
    $colore;

    echo 
    "<style  type=\"text/css\">

    a.continua {
        font-size:11px;
        font-style:italic;
        text-decoration:none;
        color: " 
    $colore ";
    }
    a.continua:hover {
        color:#F3C;
    }
    </style>"

    Ho provato "echo $colore;" subito dopo lo switch e funziona, mi scrive esattamente il numero del colore in base al tipo. Ma all'interno del css proprio non va, si ferma al primo colore (quello abbinato a "varie"). E' normale?

  2. #2
    Il codice così come l'hai postato funziona perfettamente.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    magari è sbagliato "$tipo"

  4. #4
    Utente di HTML.it L'avatar di Reiko81
    Registrato dal
    Oct 2009
    Messaggi
    203
    Originariamente inviato da satifal
    Il codice così come l'hai postato funziona perfettamente.
    Ma l'hai provato dando a $tipo un solo valore?

    Perché a me viene da

    Codice PHP:
    while($row=mysql_fetch_array($sql)){
        
    $tipo $row["tipo"]; 
    ecc...

    E proprio non va! Però non va solo all'interno dello stile, perché se faccio un echo prima mi stampa perfettamente il codice del colore.

  5. #5
    Utente di HTML.it L'avatar di Reiko81
    Registrato dal
    Oct 2009
    Messaggi
    203
    Ho risolto così:

    Codice PHP:
    <a href=\"page.php?" $id "\" style=\"color:" $colore ";\"> 
    A quanto pare non ciclava nel tag <style>. Così invece funziona.

  6. #6
    Perchè non posti il codice completo invece che semplici spezzoni?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Utente di HTML.it L'avatar di Reiko81
    Registrato dal
    Oct 2009
    Messaggi
    203
    Abbreviato, ma è essenzialmente questa la parte che mi interessa.

    Codice PHP:
    connettiDb();
    $sql mysql_query("SELECT * FROM film WHERE data > 0 ORDER BY data ASC");  
    while(
    $row=mysql_fetch_array($sql)){
        
    $tipo $row["tipo"];
        
    $testo $row["testo"];
        
    $id $row["idFilm"];
    $colore $tipo;
    switch(
    $colore){

        case 
    "varie":
            
    $colore "#ff9900";
            break;
        case 
    "telefilm":
            
    $colore "#660099";
            break;
        case 
    "musica":
            
    $colore "#990066";
            break;
        case 
    "libri":
            
    $colore "#339900";
            break;
        case 
    "film":
            
    $colore "#003399";
            break;
        }

    echo 
    $colore;

    echo 
    "<style  type=\"text/css\">

    a.continua {
        font-size:11px;
        font-style:italic;
        text-decoration:none;
        color: " 
    $colore ";
    }
    a.continua:hover {
        color:#F3C;
    }
    </style>"
    ;

    echo 
    "<a href=\"page.php?" $id $tipo "\" class=\"continua\">&raquo; continua a leggere</a>";
    }
    lasciaDb(); 

  8. #8
    Ma così non va bene, se metti tutto all'interno di un ciclo avrai tanti blocchi CSS ripetuti con l'unica differenza nel valore assegnato a colore. Ti ritroverai ad esempio con a.continua valorizzato n volte con colori sempre differenti.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  9. #9
    Utente di HTML.it L'avatar di Reiko81
    Registrato dal
    Oct 2009
    Messaggi
    203
    Non so se ho capito!
    Io vorrei che a.continua fosse valorizzato con colori differenti in base a $tipo.

    Ora, così non posso farlo perché prende solo il primo valore dello switch.
    L'unica soluzione è quella che ho postato più sopra
    Codice PHP:
    <a href="page.php?" $id "\" style=\"color:" $colore ";\"> 
    o c'è qualche altro modo per risolvere il problema?

  10. #10
    Come fai tu nel codice HTML ti ritroverai una roba del tipo:

    codice:
    <style  type=\"text/css\">
    a.continua {
        font-size:11px;
        font-style:italic;
        text-decoration:none;
        color:#660099;
    }
    a.continua:hover {
        color:#F3C;
    }
    </style>
    
    <style  type=\"text/css\">
    a.continua {
        font-size:11px;
        font-style:italic;
        text-decoration:none;
        color:#339900;
    }
    a.continua:hover {
        color:#F3C;
    }
    </style>
    
    ...
    Come farà il browser a capire qual'è il giusto colore da associare alla classe "continua" ?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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.