Heim >php教程 >php手册 >推荐php模板技术

推荐php模板技术

WBOY
WBOYOriginal
2016-06-21 09:06:262302Durchsuche

模板

 站点结构
代码:
站点
  ┗includes
       ┗class.inc
  ┣templet
       ┗index.htm
       ┣list.htm
       ┗content.htm
  ┣index.php
  ┗content.php
库结构
代码:
-- 数据库: `test`
-- 表的结构 `test`
CREATE TABLE `test` (
  `id` smallint(3) NOT NULL auto_increment,
  `name` varchar(10) NOT NULL default '',
  `sex` enum('男','女') NOT NULL default '男',
  `age` smallint(2) NOT NULL default '0',
  `email` varchar(20) NOT NULL default '',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
--------------- class.inc文件 --------
[复制此代码]CODE: class mycon{    
    private $myhost;   
    private $myuser;   
    private $mypwd;   
    function mycon($host="localhost",$user="root",$pwd=""){   
      $this->myhost = $host;   
      $this->myuser = $user;   
      $this->mypwd = $pwd;   
    }   
    function connect(){   
      return mysql_connect($this->myhost,$this->myuser,$this->mypwd);   
    }   
  }   
  class templet{   
     private $source_file;   
     function get_file($filename){   
         $this->source_file = file_get_contents($filename);   
     }   
     function parse($tags,$vals){   
         if(!is_array($tags)){   
            return preg_replace("|{".$tags."}|",$vals,$this->source_file);    
         }else{   
            $an = count($tags);   
            for($i=0;$i               $tags[$i] = "|{".$tags[$i]."}|";   
            }   
           return preg_replace($tags,$vals,$this->source_file);    
        }   
     }   
  }   
?> 

----------------index.htm文件-------------------
[复制此代码]CODE:   
   
首页   
   
   

   
   
   
   
   
     
   
     
   
     
   
     
   
   
   
    {所有列表}   
   
   
     
   
     
   
   
   
成员列表
姓名性别年龄email
共有{总条数}条记录,显示{每页条数}条/页{分页}
   
   

------------------list.htm文件-------------------
[复制此代码]CODE:   
  {姓名} {性别} {年龄} {email}   
 

-------------------content.htm文件-----------------------
[复制此代码]CODE:   
   
成员信息   
   
   

   
   
   
   
   
     
   
   
   
     
   
   
   
     
   
   
   
     
   
成员信息
姓名 {姓名}
性别 {性别}
年龄 {年龄}
email {email}
   
 

----------------index.php文件--------------------------
[复制此代码]CODE:  include("includes/class.inc");    
  $tmpl =new templet;    
  $mycon =new mycon;    
  $con = $mycon->connect();    
  mysql_select_db("test",$con);    
  $lim = 20; //每页显示行数    
  $p = ($_GET[p]) ? $_GET[p] : 1;  //当前页号    
  /***** 生成列表开始 *****/    
  $lists = "";    
  $tmpl->get_file("templet/list.htm");    
  $tags = array("成员ID","姓名","性别","年龄","email");  //应与表字段同顺序    
  $rs = mysql_query("select * from test order by id desc limit ".($p-1)*$lim.",$lim");    
  while($row=mysql_fetch_row($rs)){    
     $lists .= $tmpl->parse($tags,$row);    
  }    
   /***** 生成列表完成, 分页开始 *****/    
  $tmpl->get_file("templet/index.htm");    
  $rn = @mysql_result(mysql_query("select count(id) from test"),0);  //总记录数    
  $ps = ceil($rn/$lim);   //总页数    
  $pagination = "首页 ";    
  if($p>1) $pagination .= "";    
  else $pagination .= "";    
  $pagination .= "上一页
";    
  if($p";    
  else $pagination .= "";    
  $pagination .= "下一页
尾页  ";    
   /***** 分页完成, 生成页面开始 *****/    
   $tags = array("所有列表","总条数","每页条数","分页");    
   $vals = array($lists,$rn,$lim,$pagination);    
   echo $tmpl->parse($tags,$vals);    
?>

---------------- content.php文件 ---------------
[复制此代码]CODE:  include("includes/class.inc");   
  $tmpl =new templet;   
  $mycon =new mycon;   
  $con = $mycon->connect();   
  mysql_select_db("test",$con);   
  $tmpl->get_file("templet/content.htm");   
  $rs = mysql_query("select * from test where id=$_GET[id]");   
  $row=@mysql_fetch_row($rs);   
  unset($row[0]); //去掉表中读出的多余字段,对齐替换项,或在SELECT语句中列表字段    
  $tags = array("姓名","性别","年龄","email");    
  echo $tmpl->parse($tags,$row);   
?>



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn