Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1

    colore alternato per variabile

    Ciao Raga,
    Come faccio ad alternare i colori dei records quando cambia una variabile ?

    Mi spiego meglio; Non intendo alternare i colori a livello incrementale ($color++)

    per esempio, se inserisco delle info ordinandole per week,
    mi piacerebbe alternare il colore x week, se pò fà ?

    Ho reso l'idea ?


    .

  2. #2

    spiegati ancora meglio....

    MEMENTO AUDERE SEMPER
    Maxxl

    www.maxxl.it

  3. #3
    immaginavo di essere stato contorto...

    semplicemente ho un ciclo che mi stampa una cosa del genere, e volevo dare un colore alternato ogni volta che cambia la settimana, per es.:

    id | week | data | info | colore
    1 | 15 | 09/05/2010 | notizia 1 | sfondo wk 15 azzurro
    2 | 15 | 10/05/2010 | notizia 2 | sfondowk 15 azzurro
    3 | 16 | 11/05/2010 | notizia 3 | sfondowk 16 bianco
    4 | 16 | 11/05/2010 | notizia 4 | sfondo wk 16 bianco
    5 | 16 | 11/05/2010 | notizia 5 | sfondo wk 16 bianco
    6 | 16 | 12/05/2010 | notizia 6 | sfondo wk 16 bianco
    7 | 17 | 13/05/2010 | notizia 7 | sfondowk 17 azzurro
    8 | 17 | 14/05/2010 | notizia 8 | sfondowk 17 azzurro


    intendevo una cosa del genere



    .

  4. #4
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    ..non chiedermi come funziona ma funziona..
    ..avevo capito che volevi una cosa così, ma non riuscivo a farla funzionare
    io l'ho fatto con un campo NOME, ma se metti il campo data non credo sia differente..
    Codice PHP:
    <?php
    $i 
    1;
    $colore[1] = "#FF9900";
    $colore[2] = "#CCCCCC";
    $sezione 'fittizia';
    while ( 
    $row_Recordset1 mysql_fetch_array($Recordset1) )
    {
    if(
    $sezione != $row_Recordset1['nome'])
        {
    $i++;
        if (
    $i 2) { $i 1;}

    ?>
    <tr><td bgcolor="<?php
    if ($i == 1) { echo $colore[1];} else { echo $colore[2]; }  ?>" >[b] <?php echo $row_Recordset1['nome']; ?></td>
      </tr>

    <?php   
            
    $sezione 
    $row_Recordset1['nome'];
        }
        else
        { 
                
    ?>     
     <tr><td bgcolor="<?php if ($i == 1) { echo $colore[1];} else { echo $colore[2]; } ?>"> <?php echo $row_Recordset1['nome']; ?> - <?php
    //questo mi serviva per verificare i valori
    echo $sezione?></td>
         </tr>
    <?php       

    }
    }
    ?>
    sicuramente è ottimizzabile.. non l'ho pulito da prove fatte.. però se metti le tue variabili sicuramente va..

  5. #5
    puoi formattare la data in date con il W (numero di settimane)

    se la settimana è pari un colore... altrimenti l'altro....

    $nrsett=date("W", tua data in timestamp);

    $colore = ($nrsett%2 == 0 ? '#ffffff' : '#ff0000');
    MEMENTO AUDERE SEMPER
    Maxxl

    www.maxxl.it

  6. #6
    Guarda questo codice di esempio:

    Codice PHP:
    $test = array(
        
    'uno',
        
    'uno',
        
    'uno',
        
    'due',
        
    'due',
        
    'tre',
        
    'tre',
        
    'tre',
        
    'quattro',
        
    'cinque',
    );

    $color     0;
    $prev_week '';

    foreach ( 
    $test as $week ) {
        
    // controlla se e' cambiata la settimana
        
    if ( $week != $prev_week ) {
            
    // se si inverti il colore
            
    $color     = !$color;
            
    // e salva la settimana corrente
            
    $prev_week $week;
        }
        
    // assegna il colore a seconda del valore di $colore
        
    $class $color 'azzurro' 'bianco';
        
    // output
        
    echo "<span class=\"$class\">$week</span>\n";


  7. #7
    anzi visto che hai già il valore


    Codice PHP:
    $colore = ($week%2 == 0 ? '#ffffff' : '#ff0000');

    <td bgcolor="<?php echo $colore>">
    <?php echo 
    $row_Recordset1['nome']; ?> - <?php 
    //questo mi serviva per verificare i valori 
    echo 
    $sezione; ?></td>
    MEMENTO AUDERE SEMPER
    Maxxl

    www.maxxl.it

  8. #8
    Giusto, essendo un valore numerico la soluzione di maxxl e' decisamente migliore.

  9. #9
    Originariamente inviato da maxxl
    anzi visto che hai già il valore

    Codice PHP:
    $colore = ($week%2 == 0 ? '#ffffff' : '#ff0000');
    <tr bgcolor="<?php echo $colore>">

    GRANDE maxxl !!!

    FUNONZIA !!!








    .

  10. #10
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    me lo segno, perchè ci ho messo un'ora a farlo funzionare..

    Originariamente inviato da newbobotime
    GRANDE maxxl !!!

    FUNONZIA !!!








    .

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.