`
leeyea
  • 浏览: 13500 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

利用PHP模版生成静态的HTML

 
阅读更多

<?php
header('Content-Type:text/html;charset=utf-8');//编码设置
/*
*Powered by leeyea
*2011-11-16

大概步骤:

一、建立数据库news_db
news表字段:id、title、content、path(HTML文件路径)
二、提交数据的表单页面add.html
表单action到add.php
三、创建一个HTML模版model.html
<html>
<body>
新闻的标题:{title}
新闻的内容:{content}
</body>
</html>
模版说明:
1.模版界面根据自己的思路设计(前台美工)
2.预留出需要被替换的区域,用存放{title}和{content}
2.大括号{title}和{content}里面的标记必须存在,方便后面php函数来替换
*/

/************************************add.php 添加,数据处理页面*******************************/

//以下创建num_count.txt文本文档,其值自动计数
$txt="num_count.txt";//用来生成不同的文件名(数字)
if(!file_exists("$txt")){
fopen($txt,'w');//写入或创建的方式打开,如果此文档不存在,则自动创建test.txt文本文件
}
$fp=fopen($txt,'r');//如果存在,以只读的方式访问
$num=fgets($fp,20);//读取文档中20-1个字符数
$num=$num+1;//每次其值自动加1
fclose($fp);

$fp=fopen($txt,'w');
fwrite($fp,$num);//更新其值
fclose($fp);

//利用上面自动计数的值获得HTML静态路径path,并且生成的路径是自动增长的;
//如1.html、2.html…每增加一条新闻便自动加1
$houzui='.html';//网页格式后缀
$folder='newsfile/';//存放的文件夹名字
$path=$folder.$num.$houzui;//生成的文件名

//此处用sql语句把表单数据insert到数据表news中去
require_once('inc/conn.php');
$title=$_GET['title'];
$content=$_GET['content'];
$sql="insert into news (title,content,path)values('$title','$content','$path')";
$query=mysql_query($sql)or die('操作失败');
//以下是关键,把从表单获得的数据替换模版中的{title},{content}标记
$fp=fopen('model.html','r');
$str=fread($fp,filesize('model.html'));//读取模版中内容
$str=str_replace('{title}',$title,$str);//把表单来的变量替换到模版中的{title}
$str=str_replace('{content}',$content,$str);//把表单来的变量替换模版中的{content}
fclose($fp);

$page=fopen($path,'w');//写入方式促使其生成html页面,作为新闻标题链接的页面
fwrite($page,$str);//把之前模版里的内容写入生成的html页面
fclose($page);
/*---------------------------结束-----------------------------*/
//测试程序的运行
header("location:index.php");
//注:此页面不能刷新,否则会生成新的文件

/*******************************update.php更新数据************************************/

//接收传过来的文件路径作为数据库检索的条件

//先更新数据库
$sql="update news set title='$title',content='$content' where path='$path'";
$query=mysql_query($sql)or die('更新数据库记录失败');
//再打开更新对应的模版生成的html文件
$model=fopen('model.html','r');
$str=fread($model,filesize('model.html'));
$str=str_replace('{title}',$title,$str);
$str=str_replace('{content}',$content,$str);
fclose($model);
$page=fopen($path,'w');//打开待更新的页面
fwrite($page,$str);//写入新的数据
fclose($page);

/**************************************del.php删除数据************************************/

//先删除数据库中的对应记录
$sql1="delete from news where path='$path'";
$query1=mysql_query($sql1)or die('操作数据库失败');
mysql_close($conn);

//再删除物理文件
if(file_exists($path)){
unlink($path);
echo '删除物理文件成功';
}else{echo '<font color=#ff0000>要删除的物理文件不存在</font>';}
}


/*---------------------------思路总结-----------------------------
设计模版,把需要被替换的内容用{}放到模版相应的位置
修改也是一样,先用update语句更新数据库(以传过来的$path作为关键字检索);然后重新赋值给模版,再次打开生成的页面,把模版内容给它即可;
删除,先delete表中要删除的内容,再用unlink($path)来删除html的物理文件即可;
*/
?>

分享到:
评论

相关推荐

    把php生成静态(html)页面程序类

    把php生成静态(html)页面程序类 private $template; //模版 private $file_name; //文件名 private $array; //数据数组 function __construct($file_name, $template, $array) { //构造类 $this-&gt;...

    php批量生成静态页html

    用php语言批量生成静态页,可解决seo的问题,在商城,内容管理系统等地方都有很大的适用性。

    PHP生成静态页面小程序 v1.1.zip

    前几天发表一个有关PHP生成静态HTML页面小程序,有朋友私下说能不能整理一下,把相关PHP生成静态HTML,原理性强的都写出来,适合PHP新手用到的一些方法,这里我在之前的哪个版本上面又进行了完善,把PHP新手朋友要求...

    php生成静态页面源码

    php生成静态页面源代码 我修改完善后,亲测可用 利用模板生成静态,功能强大。

    php生成静态html的企业网站管理系统 整站源码 我见过最好用的!

    基于AJAX的平滑静态网页技术,生成静态网页,提高网站访问效率,有利搜索引擎收录。 【安装】  请注意备份原有数据库内容,以免覆盖。  1.下载并解压缩文件包,上传至服务器或主机空间  2.在浏览器地址栏中输入...

    PHP生成静态页面小程序 v1.1

    前几天发表一个有关PHP生成静态HTML页面小程序,有朋友私下说能不能整理一下,把相关PHP生成静态HTML,原理性强的都写出来,适合PHP新手用到的一些方法,这里我在之前的哪个版本上面又进行了完善,把PHP新手朋友要求...

    利用PHP生成静态html页面的原理

    对于一个访问量可能达百万千万级别的网站来说 这无疑是服务器一个大大的负担,所以把动态数据转换成静态html页面就成了节省人力物力的首选因为此前没有相应的经验,所以这篇文章和大家分享利用PHP生成静态html页面的...

    php 生成静态方法

    PHP生成静态页面详解 一,PHP脚本与动态页面。  PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文件混合,也可以类,函数封装等形式,以模板的方式对用户请求进行处理。无论以何种方式,它的基本原理...

    生成静态html文件的企业门户网站系统

    软件介绍:公司网站管理系统商业版源码下载,中文版免费企业网站管理系统,生成静态html文件的漂亮蓝色风格网页模板免费下载,企业网站模板,公司网站模板下载,公司网页模板,后台地址/admin/Login.asp,后台帐号admin密码...

    使用PHP实现生成HTML静态页面

    在PHP网站开发中为了网站推广和SEO等需要,需要对网站进行全站或局部静态化处理,PHP生成静态HTML页面有多种方法,比如利用PHP模板、缓存等实现页面静态化,今天就以PHP实例教程形式讨论PHP生成静态页面的方法。

    仿360导航,静态生成html

    360导航一样的导航系统,全站静态生成html,php开发,没有明显的安全漏洞!

    PHP生成静态页面的方法

    简单的PHP生成静态页面的方法 &lt;?php $fp = fopen &#40;"templets.html","a"&#41;; if ($fp){ $fup = fread ($fp,filesize("templets.html")); $fp2 = fopen &#40;"html.shtml","w"&#41;; if ($fwrite ($fp2,...

    php生成静态html页面的方法(2种方法)

    在PHP网站开发中为了网站推广和SEO等需要,需要对网站进行全站或局部静态化处理,PHP生成静态HTML页面有多种方法,比如利用PHP模板、ob系列的函数,本文给大家分享php生成静态html页面的方法(2种方法),感兴趣的朋友...

    PHP生成静态页面详解

    PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文件混合,也可以类,函数封装等形式,以模板的方式对用户请求进行处理。无论以何种方式,它的基本原理是这样的。由客户端提出请求,请求某一页面 -----&gt; ...

    雨尘SEO静态页面生成系统版本源码3秒钟可生成上千条单页面SEO必备神器.zip

    雨尘SEO静态页面生成系统PHP网站源码v1.3最新版本,支持文章采集,功能,多模板选择批量生成单页,本次更新增了百度自动推送和网站地图sitemap功能。 全新安装教程: 手动导入数据库文件:sql.sql 修改:config....

    PHP随机静态页面生成系统源码 雨尘SEO系统v1.3

    雨尘SEO静态页面生成系统源码v1.3版本,支持文章采集,功能,多模板选择批量生成单页,本次更新增了百度自动推送和网站地图sitemap功能。 全新安装教程: 手动导入数据库文件 修改:config.php数据库信息 后台目录:...

    烈火文章管理系统全静态2.7版

    系统根据模板生成静态页,生成效率高 支持图片选程自动上传功能 删除文章后,文章相关图片也一并删除减少垃圾文件的存在,节约服务器空间 安装使用:将程序上传到根目录,管理路径admin/index.asp,用户名及...

    HTML5酷站源码网页HTML5模板源码代码(14个).rar

    最新HTML5酷站源码网页HTML5模板源码代码(14个):01 HTML5 + PHP 清爽靓丽风格全站生成静态深度seo整站纯绿色代码...................06 大气时间轴图片滚动扁平化风格html5模板07 收集一些HTML5+CSS3 +JS的网页...

    解析PHP生成静态html文件的三种方法

    本文将介绍Php 生成静态html文件的三种方法 。1,下面使用模版的一个方法!复制代码 代码如下:&lt;?php $fp = fopen &#40;“templets.html”,”a”&#41;; if ($fp){ $fup = fread ($fp,filesize(“templets.html”)); ...

Global site tag (gtag.js) - Google Analytics