Creare una tabella con colori alternati attraverso Smarty!
Risultati da 1 a 3 di 3
  1. #1
    Utente Elite
    L'avatar di M4xKill3r
    Registrazione
    22/04/11
    Località
    Cagliari!
    Età
    16
    Messaggi
    1957
    Ringraziato: 58 in 52 posts
    Reputazione
    3

    Thumbs up Creare una tabella con colori alternati attraverso Smarty!



    Smarty e è un template engine, ovvero una libreria che ci consente di separare il codice di developing dal codice di design. Serve ad evitare quegli spiacevolissimi echo “<tr><td>informazione da inserire</td></tr>”; che se includono anche le virgolette ci fanno diventare matti. Usare una libreria di questo genere aiuta a separare la logica di programmazione da quella di design e quindi a tenere un codice più pulito, più comprensibile e di conseguenza più manutenibile.

    Il codice HTML che useremo sara piu o meno simile a questo:
    Codice HTML:
    <table cellpadding="0" cellspacing="0">
     <tr>
      <th>Cognomi</th>
     </tr>
     <tr>
      <td>Rossi</td>
     </tr>
     <tr>
      <td>Verdi</td>
     </tr>
     ... and so on ...
    </table>
    Il codice CSS resta lo stesso, ovvero:
    table {
        width: 100%;
        border: 1px solid [URL=http://www.italianhack.org/misc.php?do=dbtech_usertag_hash&hash=cef]#cef[/URL]
        text-align: left; }
    th {
        font-weight: bold;
        background-color: [URL=http://www.italianhack.org/misc.php?do=dbtech_usertag_hash&hash=acf]#acf[/URL]
        border-bottom: 1px solid [URL=http://www.italianhack.org/misc.php?do=dbtech_usertag_hash&hash=cef]#cef[/URL] }
    td,th {
        padding: 4px 5px; }
    .odd {
        background-color: [URL=http://www.italianhack.org/misc.php?do=dbtech_usertag_hash&hash=def]#def[/URL] }
    .odd td {
        border-bottom: 1px solid [URL=http://www.italianhack.org/misc.php?do=dbtech_usertag_hash&hash=cef]#cef[/URL] }
    Iniziamo con il creare qualche riga di codice PHP, non dobbiamo fare altro che importare la libreria Smarty nel progetto, creare un array che contiene i valori da stampare a schermo e visualizzare il template:
    Codice HTML:
    <?php
    //includo e istanzio la libreria
    include_once('path_to_smarty/smarty.class.php');
    $smarty->new Smarty();
     
    //creo un array di valori che visualizzerò a schermo
    $cognomi = array('Rossi', 'Verdi', 'Bianchi','Mancini','Baldi');
     
    //assegno l'array ad una variabile smarty
    $smarty->assign("cognomi",$cognomi);
    //inizializzo a 0 una variabile di iterazione
    $smarty->assign("i",0);
     
    //visualizzo il template
    $smarty->display("template.tpl");
    Passiamo ora al codice HTML/Smarty del file template.tpl che visualizzerà la tabella con i colori alternati:
    Codice HTML:
    ...some code...
    <table cellpadding="0" cellspacing="0">
     <tr><th>Cognomi</th></tr>
    {foreach from=$cognomi item=cognome}
     <tr><td>{if $i++ is odd} class="odd"{/if}>{$cognome}</td></tr>
    {foreachelse}
     <tr><td>$cognomi vuoto...</td></tr>
    {/foreach}
    </table>
    L’unica riga da analizzare è quella dove faccio il controllo:
    {if $i++ is odd}{/if}
    Tale riga effettua due operazioni contemporaneamente:
    Controlla che $i è dispari e in caso positivo visualizza ciò che è incluso tra i tag {if}{/if}
    Una volta effettuato il check incrementa la variabile $i
    In questo modo al prossimo ciclo foreach avrò la variabile incrementata di 1 che mi realizzerà la riga di colore alterno. Nulla di più semplice!

    PER QUALUNQUE PROBLEMA CHIEDETE QUI A ME

    Fonte:web
    Non ti funziona un hack per warrock? Usa il mio Injector e vedi che gia funzionera!
    Clicca Qui per Uttilizzare il mio Injector!

    21/01/09 Iscrizzione Primo ItalianHack!
    08/08/2011 Official Helper!

  2. #2
    Utente Registrato
    L'avatar di Plugin
    Registrazione
    03/01/12
    Messaggi
    145
    Ringraziato: 2 in 2 posts
    Reputazione
    1
    Segnalo questo è HTML non PHP

  3. #3
    Utente Elite
    L'avatar di Ryuzaki
    Registrazione
    15/08/11
    Località
    Inferi
    Età
    16
    Messaggi
    2528
    Ringraziato: 45 in 41 posts
    Reputazione
    3
    Citazione Originariamente Scritto da Plugin Visualizza Messaggio
    Segnalo questo è HTML non PHP
    Infraziono per necroposting, potevi anche solo segnalare!
    Chiudo e sposto

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •