莫相离 发表于 2015-2-4 00:11:26

PHP教程之保举php模板手艺

兴趣可能会慢慢消亡,所以适当培养兴趣会激发自己无线的乐趣,有了乐趣,编程有啥难的。模板    站点布局
代码:
站点
┗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:<?php   
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<$an;$i++){   
               $tags[$i] = "|{".$tags[$i]."}|";   
            }   
         return preg_replace($tags,$vals,$this->source_file);   
      }   
   }   
}   
?>
----------------index.htm文件-------------------
[复制此代码]CODE:<HTML>   
<HEAD>   
<TITLE>首页</TITLE>   
</HEAD>   
<BODY style="font-size:12px">   
<TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="1" bgcolor=#000000 style="font-size:12px">   
    <caption>成员列表</caption>   
    <TR bgcolor="#ffffff" align=center>   
      <TD width=25%>姓名</TD>   
      <TD width=25%>性别</TD>   
      <TD width=25%>岁数</TD>   
      <TD width=25%>email</TD>   
    </TR>   
    {一切列表}   
    <TR bgcolor="#ffffff">   
      <TD colspan=2>共有{总条数}笔记录,显示{每页条数}条/页</TD>   
      <TD colspan=2 align=right>{分页}</TD>   
    </TR>   
</TABLE>   
</BODY>   
</HTML>
------------------list.htm文件-------------------
[复制此代码]CODE:<TR bgcolor="#ffffff" align=center>   
<TD><a href="content.php?id={成员ID}">{姓名}</a></TD><TD>{性别}</TD><TD>{岁数}</TD><TD>{email}</TD>   
</TR>
-------------------content.htm文件-----------------------
[复制此代码]CODE:<HTML>   
<HEAD>   
<TITLE>成员信息</TITLE>   
</HEAD>   
<BODY style="font-size:12px">   
<TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="1" bgcolor=#000000 style="font-size:12px">   
    <caption>成员信息</caption>   
    <TR bgcolor="#ffffff">   
      <TD width=60>姓名</TD><TD>{姓名}</TD></TR>   
    <TR bgcolor="#ffffff">   
      <TD>性别</TD><TD>{性别}</TD></TR>   
    <TR bgcolor="#ffffff">   
      <TD>岁数</TD><TD>{岁数}</TD></TR>   
    <TR bgcolor="#ffffff">   
      <TD>email</TD><TD>{email}</TD></TR>   
</TABLE>   
</BODY>
----------------index.php文件--------------------------
[复制此代码]CODE:<?php   
include("includes/class.inc");   
$tmpl =new templet;   
$mycon =new mycon;   
$con = $mycon->connect();   
mysql_select_db("test",$con);   
$lim = 20; //每页显示行数   
$p = ($_GET) ? $_GET : 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 = "<a href='?p=1'>首页</a> ";   
if($p>1) $pagination .= "<a href='?p=".($p-1)."'>";   
else $pagination .= "<font color='#777777'>";   
$pagination .= "上一页</font></a> ";   
if($p<$ps) $pagination .= "<a href='?p=".($p+1)."'>";   
else $pagination .= "<font color='#777777'>";   
$pagination .= "下一页</font></a> <a href='?p={$ps}'>尾页</a>";   
   /***** 分页完成, 生成页面入手下手 *****/   
   $tags = array("一切列表","总条数","每页条数","分页");   
   $vals = array($lists,$rn,$lim,$pagination);   
   echo $tmpl->parse($tags,$vals);   
?>
---------------- content.php文件 ---------------
[复制此代码]CODE:<?php   
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");   
$row=@mysql_fetch_row($rs);   
unset($row); //去失落表中读出的过剩字段,对齐交换项,或在SELECT语句中列表字段   
$tags = array("姓名","性别","岁数","email");   
echo $tmpl->parse($tags,$row);   
?>

熟悉HTML/CSS/JS等网页基本元素,完成阶段可自行制作完整的网页,对元素属性达到熟悉程度

柔情似水 发表于 2015-2-4 09:56:22

写的比较杂,因为我也是个新手,不当至于大家多多指正。

小妖女 发表于 2015-2-9 07:07:44

这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。

admin 发表于 2015-2-11 16:51:44

不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。

只想知道 发表于 2015-3-2 15:49:55

其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。

若天明 发表于 2015-3-7 23:33:51

开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。

深爱那片海 发表于 2015-3-12 18:04:06

多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。

再现理想 发表于 2015-3-15 09:25:00

写的比较杂,因为我也是个新手,不当至于大家多多指正。

活着的死人 发表于 2015-3-19 07:37:36

你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。

仓酷云 发表于 2015-3-20 18:40:24

在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。

小女巫 发表于 2015-3-28 02:50:37

如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,

简单生活 发表于 2015-4-6 00:09:44

说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。

老尸 发表于 2015-4-7 19:51:41

多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。

愤怒的大鸟 发表于 2015-4-10 15:12:01

刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。

冷月葬花魂 发表于 2015-4-12 15:30:04

实践是检验自己会不会的真理。

海妖 发表于 2015-4-13 03:45:22

因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax

莫相离 发表于 2015-4-14 18:14:06

我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:

第二个灵魂 发表于 2015-4-15 13:49:19

我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。

变相怪杰 发表于 2015-4-22 03:35:50

最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。

金色的骷髅 发表于 2015-4-25 01:09:49

其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
页: [1]
查看完整版本: PHP教程之保举php模板手艺