- Home
- Categorie
- Coding e Sistemistica
- Coding
- php template smarty
-
Tranquilli ragazzi, non è successo niente.
Per quanto riguarda smarty il discorso funziona più o meno così:
- realizzi un file tpl che è il template, in pratica un html "vuoto" nel quale al posto dei dati ci stanno delle variabili
- nel file php includi tutti i file necessari di smarty
- 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'); )
- lo script php non deve dare alcun output
- alla fine dello script dai il comando $smarty->display('index.tpl');
Puoi iniziare a documentarti dal sito ufficiale di smarty
-
Allora gorka...
a logica mi torna! Riesco a seguire i passaggiUna domanda:
Quando qui- realizzi un file tpl che è il template, in pratica un html "vuoto" nel quale al posto dei dati ci stanno delle variabili
- nel file php includi tutti i file necessari di smartydici
- template
- smarty
intendi il solito file .tpl? giusto?
-
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
-
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?
-
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).
-
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!
-
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.
-
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>"....
-
allora rispondo ad entrambi:
- innanzitutto grazie
- 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!
-
utile questo 3d..
tra i template engine, mi hanno parlato di savant..qlc lo conosce?