• User Attivo

    php template smarty

    Ciao gente!
    Allora io sono ai primissimi passi con php. E vorrei piano piano "convertire" un mio sito che per ora è in semplice HTML. L'obiettivo è snellire le fasi di aggiornamento perchè adesso devo fare tutto a mano ed è impegnativo.

    Un mio amico che purtroppo ha poco tempo per spiegarmi e darmi alcuni trucchi, mi ha consigliato di farlo da zero imparandomi ed utilizzando i template descritti a questo sito http://smarty.php.net/manual/it/index.php me li consigliate anche voi?

    Avete altre dritte per farmi capire questo mondo php che non mi è troppo chiaro. 🙂 Grazie.


  • Moderatore

    punto uno:

    Smarty è un template engine e non serve a nulla per imparare php 😄

    punto due:

    se davvero vuoi imparare php inizia a creare delle semplici paginette tipo login, invii email, esercizi sulle date, etc
    e se hai qualche problema chiedi qui....

    non iniziare con i template engyne che per ora non ti servono 😉


  • User Attivo

    Andrea Top che consigli che ti da quell'amico 😄

    Comunque pure io consiglio di fare piccoli scriptini magari concatenarli tra loro poi saprai fare qualcosa.


  • User Attivo

    mmmhm visto che mi dite questo in due...
    non ho capito io i consigli 😄 è più probabile!!!! :mmm:

    Allora vi porgo subito un mio problema. So che è per gestire meglio il sito è meglio non mischiare parte php con parte html. Come faccio allora a dare uno sfondo colori a una tabella, border etc etc?

    ps domanda stupida?
    pps mi potete spiegare cos'è un template? 🙂


  • Super User

    @Andreatop said:

    So che è per gestire meglio il sito è meglio non mischiare parte php con parte html.

    Non è sempre vero, dipende da cosa vuoi ottenere.

    Separare l'elaborazione dei dati dalla presentazione degli stessi è un'ottima metodologia di lavoro, però secondo me è più adatta a chi ha già un pò di confidenza con la programmazione e fa uso dei Template Engine (come Smarty).

    Quindi vai con gli "echo" 😉


  • User Attivo

    ohhh
    bravo gorka!!!
    Ora mi ricordo il discorso del mio amico era così...

    mi aiutate a capire i Template Engine (come Smarty)? Non voglio fare un sito grossolano e poi rifarlo dopo che ho fatto pratica...!!
    datemi un pò di dritte dai,
    grazie...


  • User Attivo

    andreatop, gorka ti ha sconsigliato smarty vvisto che sei alle prime armi. o sei tu che non capisci che è meglio NON usare smarty all'inizio oppure siamo noi che non sappiamo spiegare 😛


  • User Attivo

    Scusa skyline...
    non capisco il tuo ultimo post. No, neanche questo...
    Nel senso...
    io ammetto che spesso non capisco di programmazione essendo all'inizio della mia avventura. Sono anche autoironico per ammetterlo... però l'italiano lo intendo e quello che voleva dire gorka l'ho capito. Cerco ugualmente un persona armata di tanta disponibilità che mi possa spiegare come fare un sito in maniera corretta e funzionale sin dall'inizio, senza partire e fare un sito organizzato male per poi rendermi conto che ho fatto un mischiume inutile.
    Ma ripeto la mia è una richiesta di aiuto e nessuno penso sia obbligato a rispondere nonostante gli dia ai nervi la mia ignoranza. Se la vostra risposta alla mia domanda: "Come posso iniziare a programmare col php usando i template come Smarty?", è "non li usare", cercherò di risolvere in un altro modo. Se mi potete aiutare ve ne sarò grato. 😉
    Grazie comunque per la tua risposta che come avrai capito non mi ha esaltato. 🙂 :ciauz:


  • Super User

    Tranquilli ragazzi, non è successo niente.

    Per quanto riguarda smarty il discorso funziona più o meno così:

    1. realizzi un file tpl che è il template, in pratica un html "vuoto" nel quale al posto dei dati ci stanno delle variabili
    2. nel file php includi tutti i file necessari di smarty
    3. nel corso dell'esecuzione dello script php valorizzi tutte le varibili e le passi all'oggetto smarty (con la sintassi a oggetti, tipo: $smarty->assign('name', 'Ned'); )
    4. lo script php non deve dare alcun output
    5. alla fine dello script dai il comando $smarty->display('index.tpl');

    Puoi iniziare a documentarti dal sito ufficiale di smarty :ciauz:


  • User Attivo

    Allora gorka...
    a logica mi torna! Riesco a seguire i passaggi 😄

    Una domanda:
    Quando qui

    1. realizzi un file tpl che è il template, in pratica un html "vuoto" nel quale al posto dei dati ci stanno delle variabili
    1. nel file php includi tutti i file necessari di smartydici
    2. template
    3. smarty

    intendi il solito file .tpl? giusto?


  • Super User

    :nonono: fai attenzione

    Il file .tpl è il template

    Smarty è il "motore", l'insieme di script php (Template Engine) che permette di mettere insieme il template e lo script in php


  • User Attivo

    ah ok! Capito...

    ora mi leggo un pò il sito ufficiale, ma per "motore" che intendi? Un programmino che devo installare?
    immensamente grazie e un'avvertenza!!! 🙂
    io continuerò a fare domande così all'infinito, ma ti prego di dirmi quando hai finito la pazienza... che smetto!!! ok? 😄


  • Super User

    Per motore intendo la classe Smarty con tutti i suoi metodi e proprietà (composta fisicamente da tutti i files che stanno dentro la cartella smarty).


  • User Attivo

    Allora Gorka...

    io ti ripeto che sono all'inizio. Ho un database e devo fare un semplice SELECT da una tabella dando una sola condizione. Tutto ok mi riesce, ma lo sai qual'è la cosa che non riesco a capire e che trovo vitale è come dargli colore/border/digli di metterlo in una tabella etcetc...
    insomma la parte estetica!

    Metti che io voglio far visualizzare i risultati di questo SELECT in una tabella definita nei CSS. Come faccio? Grazie!


  • User Attivo

    Andreatop io ti consigliavo solo di non usare smarty, perchè non serve a quello che vuoi fare e con smarty ti complichi la vita e non di poco secondo me.


  • Super User

    Se usi Smarty devi inserire i risultati della SELECT in una array multidimensionale e poi ciclarlo nel template (ad esempio con section).

    Se non usi Smarty invece cicli il risultato della select e ad ogni ciclo crei una riga (quindi sfrutti gli echo, ad esempio -> echo "<tr><td>$line['id']</td><td>$line['name']</td></tr>"....


  • User Attivo

    allora rispondo ad entrambi:

    1. innanzitutto grazie
    2. ci tengo ad usare i template Smarty non per chissà quale motivo, ma perchè penso che una volta capito come si uniscono, poi avremo un risultato migliore specialmente dal punto di vista di chiarezza. Io non sono un mago e scervellarmi con echo e <td> magari può essere più facile però tra 10 mesi quando vorrò fare una modifica, probabilmente avrò una massa tutta insieme di html e php che invece preferisco distinguere.

    Penso che sia giusto il mio ragionamento no?

    Cmq ora provo a "fondere" un template con il codice php.
    Penso avrete mie notizie presto ::)
    ciao buona domenica!


  • User

    utile questo 3d..
    tra i template engine, mi hanno parlato di savant..qlc lo conosce?