当前位置:首页> PHP教程> php模板
关键字:
文章内容
smarty和html_QuikForm联合编程.
 
 
修改时间:[2009/03/27 20:49]    阅读次数:[2512]    发表者:[起缘]
 
折腾一个下午,把smarty和html_QuikForm联结到一起了
源码:
test.php
<?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');

  ?> 


(非常全面的一个php技术网站, 有相当丰富的文章和源代码.)
mylink.php
<?php
// load Smarty library
define('myclude','/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');
   }

}
?> 


(非常全面的一个php技术网站, 有相当丰富的文章和源代码.)
模板文件my.tpl
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  <!--  
$Id: smarty-guide.tpl,v 1.1 2005/03/03 19:26:54 kae Exp $ -->
 <
head>
<
link rel="stylesheet" type="text/css" href="css/my.css" />
<
meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
 
  </
head>

  <
body>
  <
h2>
    
  </
h2>
  <
form >
    <!-- 
Display the fields -->
    <
table>
      <
tr>
        <
th></th>
        <
td></td>
        <
th></th>
        <
td></td>
      </
tr>
      <
tr>
        <
th></th>
        <
td></td>
        <
th></th>
        <
td></td>
      </
tr>
      <!-- 
Display the buttons -->
      <
tr>
        <
td align="center" colspan="4">
          &
nbsp;
        </
td>
      </
tr>
      <!-- 
Display the copyright -->
      <
tr>
        <
td style="font-size:11px; color: navy; text-align: center" colspan="4">
          &
copy;2005 陈刚 实验
        
</td>
      </
tr>
    </
table>
层叠式样表文件my.css
body 
{
    
background-color: #10F2E7;
}

 
table   
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;
} 


(非常全面的一个php技术网站, 有相当丰富的文章和源代码.)