Newsgroup: it.comp.www.php
Titolo: PHP e templates

Ciao a tutti,
fino a ora non ho avuto particolari esigenze nell'utilizzare i templates.
Tuttavia, volendomi avvicinare a questo tipo di approccio, chiedo se ci sono
delle librerie già pronte ed eventualmente dove prenderle.
In pratica, un esempio banale, nella cartella "templates" ho il file
"pippo.tpl" che contiene la riga:
<html> <title> {TITLE} </title> </html>
nella di particolare, nella cartella principale ho il file: "index.php" dove
richiamerei con un include il file "pippo.tpl" interno a "templates" e dove
attraverso un assegnamento dico di sostituire {TITLE} con un valore a mia
scelta.
In modo cosi da ottenere in output ad esempio:
<html> <title> PEPPINO </title> </html>
dove in "index.php" ho assegnato ad esempio a {TITLE} il valore PEPPINO.
Naturalmente questo dovrebbe essere valido nel caso anche di piu di un
assegnamento o di più file.
In attesa di riscontri vi ringrazio in anticipo,
Cordialmente, Cooper.
-- 
BlueWare Web Agency
   [web] 
http://www.blueware.it
   [icq] 146781935

prova smarty templates
-- 
Se qualcosa va male non preoccuparti. Domani andrà peggio


Ho installato smarty, ma riscontro difficoltà nel funzionamento. Sia "test"
la cartella principale.
Dentro "test" ho creato la cartella "misc" e all'interno di questa, ho
inserito la cartella "smarty" contenente la librearia SMARTY e creato le
quattro cartelle che venivano richieste nelle istruzioni.
Sempre dentro "misc" ho creato il file "setup.php" il cui codice è il
seguente:
<?php
include ('smarty/Smarty.class.php');
class Smarty_engine extends Smarty {
   function Smarty_engine() {
  $this->Smarty();
  $this->template_dir = 'template/';
  $this->compile_dir = 'misc/templates_c/';
  $this->config_dir = 'misc/configs/';
  $this->cache_dir = 'misc/cache/';
  $this->caching = true;
  $this->assign('app_name','myapp');
   }
}
?>
e quindi nella cartella principale "test" ho copiato il codice che segue:
<?php
include('misc/setup.php');
$template = new Smarty_engine;
$template->assign('name','myapp');
$template->assign(array(
          'NOME' => 'Pippo',
          'COGNOME' => 'Rossi'
 )
$template->display('login.tpl');
?>
e salvato il file col nome index.php.
Fatto questo nella cartella "template" posta dentro "test" ho inserito il
file "login.tpl" il cui contenuto è:
{$NOME}<br>
{$COGNOME}<br>
ed... a questo punto eseguendo il tutto ricevo l'errore:
Parse error: parse error, unexpected T_VARIABLE in C:\Cooper\test\index.php
on line 11
la linea 11 del file index.php (di cui sopra) corrisponde a:
$template->display('login.tpl');
...mmm dove sbaglio?
In attesa di riscontri ringrazio.


C'è un modulo PEAR che fa proprio al caso tuo, HTML_Template_IT.
Per installarla, vai nella cartella di PHP (ad es. c:/php), e digita:
	pear install HTML_Template_IT
ciao
[um]


 Cordialmente, Cooper.
"Riscontri"?
Parli troppo difficile!
Smarty col tempo si č evoluto (e quindi complicato).
Prova X-Template. (cerca xtpl o x-template).
E' vecchio, ma č semplice e risponde piu' che ampiamente alle tue 
esigenze.
Io uso quello e mi č sempre bastato e avanzato.
Tac
-- 
"The result is prudent repression and restriction of any free and daring
tendency; constant mortification of impetuous intelligence; unconditioned 
propping-up of imitative and incestuous mediocrity; prostitution of the
great glories of the music of the past, used as insidious arms of offense 
against budding talent; limitation of study to a useless form of 
acrobatics floundering in the perpetual last throes of a behindhand 
culture that is already dead."

 In attesa di riscontri vi ringrazio in anticipo,
Anche io ti consiglio XTemplate, leggero e *molto* veloce senza tutte le 
complicazioni di smarty.
http://sourceforge.net/projects/xtpl/
ciao
Mauro

 ha scritto nel messaggio
news:c89pq5$nqj$1...@newsfeed.cineca.it...

Grazie :) l'ho provato e soddisfa esattamente le mie esigenze, indubbiamente
smarty sarà migliore e più completo, ma per quello che mi serve questo
XTemplate è sicuramente quello che più mi si addice :)
Grazie mille :)



Ok grazie, sto provando a seguire questa strada e ho fatto, credo sia andato
tutto ok....... adesso?
Rimango in attesa di riscontri.
