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

    tagliare template con smarty

    dunque il mio problema è abbastanza semplice...
    sto iniziando a utilizzare le Smarty di Php...
    fino a quando si stratta di sostituire campi nel template con codice generato da php ok, ma ora il problema si pone se devo tagliare pezzi di template, elaborarli e mandarli a video... un esempio

    codice:
    <table>
    [taglio]
    <tr>
    <td>{$id}</td>
    <td>{$nome}</td>
    </tr>
    [finetaglio]
    </table>
    io devo prendere il template che è racchiuso in [taglio] / [finetaglio] e ciclarlo per tutti i record del mio db o comunque ciclarlo quante volte voglio e poi stamparlo a video inserito nel template...

    qualcuno ha già affrontato questo problema?

    grazie per le risposte

  2. #2

  3. #3
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    202
    Smarty ha dei supporti per quanto riguarda l'impaginazione. Come il cambiare colore ogni riga del risultato o alternarne 2 -3.
    Altrimenti puoi aggirare il problema con php.

  4. #4
    non hai qualche link da consigliarmi con qualche esempio di codice? magari riesco a trovare una soluzione...

    e ti sare ancora più grato se mi sapresti indicare un esempio per il tagliare quel codice con il php, ci avevo già provato ma senza successo...

    grazie ancora...

  5. #5
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    202
    non è questione di taglio del codice quanto di riscriverlo più volte.
    Qui trovi come crare un cliclo con smarty.
    http://smarty.php.net/manual/it/lang...tion.cycle.php

  6. #6
    allora, ho fatto un pò di prove...

    ho usato questo codice php

    Codice PHP:
    $array['name'] = "valore1";
    $array['name'] = "valore2";
    $array['name'] = "valore3";

    if (!
    $Smarty->is_cached('ciclo.tpl'))
    {
        
    $Smarty->assign("array",$array);
    }
    $Smarty->display('ciclo.tpl'); 
    e nel file ciclo.tpl ho messo questo codice

    codice:
    <table>
    {section name=rows loop=$array}
    <tr bgcolor="{cycle values="#eeeeee,#d0d0d0"}">
       <td>{$array[name]}</td>
    </tr>
    {/section}
    </table>
    e eseguendo il codice esce questo output dal codice html...

    codice:
    <table>
    <tr bgcolor="#eeeeee">
       <td></td>
    </tr>
    </table>
    dove sbaglio?!
    sul manualetto di Smarty non c'è riferimento al codice php che hanno utilizzato

    grazie ancora per l'aiuto...

  7. #7
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    202
    A occhio non ti saprei dire. Quando vado in ufficio e ho qualche tempo morto.... perchè se mi beccano stò fresco... controllo il manuale e i miei vecchi progetti (è tanto che non uso smarty... ora ci hanno imposto di sviluppare ad oggetti e il il sito lo disegna uno studio esterno...)e ti faccio sapere.

  8. #8
    Utente bannato
    Registrato dal
    Sep 2005
    Messaggi
    905
    Originariamente inviato da neohack
    allora, ho fatto un pò di prove...

    ho usato questo codice php

    Codice PHP:
    $array['name'] = "valore1";
    $array['name'] = "valore2";
    $array['name'] = "valore3";

    if (!
    $Smarty->is_cached('ciclo.tpl'))
    {
        
    $Smarty->assign("array",$array);
    }
    $Smarty->display('ciclo.tpl'); 
    e nel file ciclo.tpl ho messo questo codice

    codice:
    <table>
    {section name=rows loop=$array}
    <tr bgcolor="{cycle values="#eeeeee,#d0d0d0"}">
       <td>{$array[name]}</td>
    </tr>
    {/section}
    </table>
    e eseguendo il codice esce questo output dal codice html...

    codice:
    <table>
    <tr bgcolor="#eeeeee">
       <td></td>
    </tr>
    </table>
    dove sbaglio?!
    sul manualetto di Smarty non c'è riferimento al codice php che hanno utilizzato

    grazie ancora per l'aiuto...
    potresti usare <div id="1"> e richiamarlo con il suo numero ID.

  9. #9
    Originariamente inviato da The FireFox
    A occhio non ti saprei dire. Quando vado in ufficio e ho qualche tempo morto.... perchè se mi beccano stò fresco... controllo il manuale e i miei vecchi progetti (è tanto che non uso smarty... ora ci hanno imposto di sviluppare ad oggetti e il il sito lo disegna uno studio esterno...)e ti faccio sapere.
    grazie aspetterò con ansia

    arigrazie per il tempo che mi stai dedicando

  10. #10
    Originariamente inviato da php_34
    potresti usare <div id="1"> e richiamarlo con il suo numero ID.
    in che senso? :master:

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 © 2024 vBulletin Solutions, Inc. All rights reserved.