smarty和html_QuikForm联合编程
时间:2005-07-30 来源:cg111
折腾一个下午,把smarty和html_QuikForm联结到一起了
源码:
test.php
require_once "HTML/QuickForm.php"; require_once 'HTML/QuickForm/Renderer/ArraySmarty.php'; require_once 'link/myload.php'; $form = new HTML_QuickForm('frmTest', 'get'); $form->addElement('header', 'hdrTesting', 'Smarty&HTML/QuickForm联合编程实验'); $form->addElement('text', 'txtFirstName', '贵姓?'); $form->addElement('text', 'txtLastName', '尊名?'); $form->addElement('text', 'txtAge', '年龄?'); $form->addElement('text', 'txtTelephone', '电话?'); $form->addElement('reset', 'btnClear', '复位'); $form->addElement('submit', 'btnSubmit', '提交'); if ($form->validate()) { # If the form validates then freeze the data $form->freeze(); } // Create the template object $tpl =$smarty=& new Smarty_my; $tpl->compile_check = true; // Create the renderer object $renderer =& new HTML_QuickForm_Renderer_ArraySmarty($tpl); // build the HTML for the form $form->accept($renderer); // assign array with form data $tpl->assign('form_data', $renderer->toArray()); // parse and display the template $tpl->display('my.tpl'); ?>
mylink.php
/usr/share/php/smarty');
require(myinclude.'/libs/Smarty.class.php');
//setup.php是一个很好的加载应用程序的类库文件(就是扩展类)
//例如你可以在index文件里包含它
class Smarty_my extends Smarty {
function Smarty_my() {
// Class Constructor. These automatically get set with each new instance.
//类构造函数.创建实例的时候自动配置
$this->Smarty();
$this->template_dir = '/var/www/apache2-default/smarty/xsgl/templates/';
$this->compile_dir = '/var/www/apache2-default/smarty/xsgl/templates_c/';
$this->config_dir = '/var/www/apache2-default/smarty/xsgl/configs/';
$this->cache_dir = '/var/www/apache2-default/smarty/xsgl/cache/';
$this->caching = true;
$this->assign('app_name','xsgl');
}
}
模板文件my.tpl
{$form_data.header.hdrTesting}
{$form_data.txtFirstName.label}
{$form_data.txtFirstName.html}
{$form_data.txtLastName.label}
{$form_data.txtLastName.html}
{$form_data.txtAge.label}
{$form_data.txtAge.html}
{$form_data.txtTelephone.label}
{$form_data.txtTelephone.html}
{$form_data.btnClear.html} {$form_data.btnSubmit.html}
©2005 陈刚 实验
层叠式样表文件my.css
body {
background-color: #10F2E7;
}
table {margin:1px;}
n {
font-size: small;
font-family: arial, helvetica, sans-serif;
}
table {
overflow: scroll;
margin: 0.1px;
font-weight: lighter;
font-family: arial, helvetica, sans-serif;
}
源码:
test.php
require_once "HTML/QuickForm.php"; require_once 'HTML/QuickForm/Renderer/ArraySmarty.php'; require_once 'link/myload.php'; $form = new HTML_QuickForm('frmTest', 'get'); $form->addElement('header', 'hdrTesting', 'Smarty&HTML/QuickForm联合编程实验'); $form->addElement('text', 'txtFirstName', '贵姓?'); $form->addElement('text', 'txtLastName', '尊名?'); $form->addElement('text', 'txtAge', '年龄?'); $form->addElement('text', 'txtTelephone', '电话?'); $form->addElement('reset', 'btnClear', '复位'); $form->addElement('submit', 'btnSubmit', '提交'); if ($form->validate()) { # If the form validates then freeze the data $form->freeze(); } // Create the template object $tpl =$smarty=& new Smarty_my; $tpl->compile_check = true; // Create the renderer object $renderer =& new HTML_QuickForm_Renderer_ArraySmarty($tpl); // build the HTML for the form $form->accept($renderer); // assign array with form data $tpl->assign('form_data', $renderer->toArray()); // parse and display the template $tpl->display('my.tpl'); ?>
mylink.php
/usr/share/php/smarty');
require(myinclude.'/libs/Smarty.class.php');
//setup.php是一个很好的加载应用程序的类库文件(就是扩展类)
//例如你可以在index文件里包含它
class Smarty_my extends Smarty {
function Smarty_my() {
// Class Constructor. These automatically get set with each new instance.
//类构造函数.创建实例的时候自动配置
$this->Smarty();
$this->template_dir = '/var/www/apache2-default/smarty/xsgl/templates/';
$this->compile_dir = '/var/www/apache2-default/smarty/xsgl/templates_c/';
$this->config_dir = '/var/www/apache2-default/smarty/xsgl/configs/';
$this->cache_dir = '/var/www/apache2-default/smarty/xsgl/cache/';
$this->caching = true;
$this->assign('app_name','xsgl');
}
}
模板文件my.tpl
{$form_data.header.hdrTesting}
{$form_data.txtFirstName.label}
{$form_data.txtFirstName.html}
{$form_data.txtLastName.label}
{$form_data.txtLastName.html}
{$form_data.txtAge.label}
{$form_data.txtAge.html}
{$form_data.txtTelephone.label}
{$form_data.txtTelephone.html}
{$form_data.btnClear.html} {$form_data.btnSubmit.html}
©2005 陈刚 实验
层叠式样表文件my.css
body {
background-color: #10F2E7;
}
table {margin:1px;}
n {
font-size: small;
font-family: arial, helvetica, sans-serif;
}
table {
overflow: scroll;
margin: 0.1px;
font-weight: lighter;
font-family: arial, helvetica, sans-serif;
}
相关阅读 更多 +