php添加文章时生成静态HTML文章的实现代码


Posted in PHP onFebruary 17, 2013

PHP生成静态文章HTML,有批量的生成,但比较标准的应该是在添加文章时就生成HTML文章,编辑时再重新生成HTML文章,删除文章时同样也样删除多余出来的HTML文章,这时批量生成就显得有点力不从心了,下面就介绍一下PHP在添加文章时如何生成静态的HTML文件。

    简单的添加文章表单这里就不写了,下面的这些源码是接受表单传过来的值而执行的程序源码,可以先拿过去测试一下。。。

<?php
 ob_start();
 require_once("../inc/conn.php");
 $typ=$_POST["typ"];
 $title=$_POST["title"];
 $content=$_POST["d_content"];
 $author=$_POST["author"];
 $source=$_POST["source"];
 $mobanpath="../moban/moban.html";
 if(file_exists($mobanpath))
 {
  $fp=fopen($mobanpath,"r");
  $str=fread($fp,filesize($mobanpath));
  $str=str_replace("-title-",$title,$str);
  $str=str_replace("-time-",date("Y-m-d H:i:s"),$str);
  $str=str_replace("-content-",$content,$str);
  $str=str_replace("-author-",$author,$str);
  $str=str_replace("-source-",$source,$str);
  $foldername=date("Y-m-d");
  $folderpath="../newslist/".$foldername;
  if(!file_exists($folderpath))
  {
   mkdir($folderpath);
  }
  $filename=date("H-i-s").".html";
  $filepath="$folderpath/$filename";
  if(!file_exists($filepath))
  {
   $fp=fopen($filepath,"w");
   fputs($fp,$str);
   fclose($fp);
  }
  $filepath=$foldername."/".$filename;
  $sql="insert into newscontent (newstypeid,newstitle,newspath,newssource,newstime) values ($typ,'$title','$filepath','$source','".date("Y-m-d H:i:s")."')";
  mysql_query($sql);
  header("location:add.php");
 }
?>

php添加文章时生成静态HTML文章的实现代码

    ob_start()是开启session的意思,写不写关系不是很大,这里按照PHP标准的写法添加上去了。

    第二句就是包含链接数据库的文件了。

    下面$内容=$_POST["内容"];就是接受过来表单的内容了。有几项就接受几项吧。

    $mobanpath="../moban/moban.html"; 这个是模板的路径。

    if(file_exists($mobanpath)):检验模板的文件是否存在,如果存在的话就执行下面的模板标签替换操作。

    再往下就是利用str_replace来执行模板标签的替换操作了,同时建立HTML文件,最后通过SQL语句添加到数据库里面,再返回到add.php添加文章标单的地方,这里的生成HTML规则可以自己添加,比如按照时间来生成,或者按照文章ID来生成等。

PHP 相关文章推荐
文件上传类
Oct 09 PHP
PHP读取XML值的代码(推荐)
Jan 01 PHP
PHP中几种常见的超时处理全面总结
Sep 11 PHP
摘自织梦CMS的HTTP文件下载类
Aug 08 PHP
php上传图片并压缩的实现方法
Dec 22 PHP
php获取文件名称和扩展名的方法
Feb 07 PHP
PHP实现将多个文件中的内容合并为新文件的方法示例
Jun 10 PHP
php获取微信共享收货地址的方法
Dec 21 PHP
php获取手机端的号码以及ip地址实例代码
Sep 12 PHP
Ubuntu 16.04中Laravel5.4升级到5.6的步骤
Dec 07 PHP
php基于协程实现异步的方法分析
Jul 17 PHP
Thinkphp 框架扩展之类库扩展操作详解
Apr 23 PHP
php中flush()、ob_flush()、ob_end_flush()的区别介绍
Feb 17 #PHP
php去除换行符的方法小结(PHP_EOL变量的使用)
Feb 16 #PHP
PHP 获取文件路径(灵活应用__FILE__)
Feb 15 #PHP
php设计模式小结
Feb 15 #PHP
php安全开发 添加随机字符串验证,防止伪造跨站请求
Feb 14 #PHP
PHP下使用CURL方式POST数据至API接口的代码
Feb 14 #PHP
PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
Feb 14 #PHP
You might like
php中CI操作多个数据库的代码
2012/07/05 PHP
Laravel 5 学习笔记
2015/03/06 PHP
PHP关联数组实现根据元素值删除元素的方法
2015/06/26 PHP
Javascript 构造函数 实例分析
2008/11/26 Javascript
javascript 原型模式实现OOP的再研究
2009/04/09 Javascript
非html5实现js版弹球游戏示例代码
2013/09/22 Javascript
jQuery 借助插件Lavalamp实现导航条动态美化效果
2013/09/27 Javascript
jQuery中prepend()方法用法实例
2014/12/25 Javascript
js实现的全国省市二级联动下拉选择菜单完整实例
2015/08/17 Javascript
JavaScript中innerHTML,innerText,outerHTML的用法及区别
2015/09/01 Javascript
JavaScript脚本库编写的方法
2015/12/09 Javascript
js HTML5 Ajax实现文件上传进度条功能
2016/02/13 Javascript
jquery.rotate.js实现可选抽奖次数和中奖内容的转盘抽奖代码
2017/08/23 jQuery
使用socket.io实现简单聊天室案例
2018/01/02 Javascript
Vuex中mutations与actions的区别详解
2018/03/01 Javascript
详解使用Next.js构建服务端渲染应用
2018/07/10 Javascript
从vue源码解析Vue.set()和this.$set()
2018/08/30 Javascript
NodeJs生成sitemap站点地图的方法示例
2019/06/11 NodeJs
vue router动态路由设置参数可选问题
2019/08/21 Javascript
简单文件操作python 修改文件指定行的方法
2013/05/15 Python
从零学Python之入门(五)缩进和选择
2014/05/27 Python
Python max内置函数详细介绍
2016/11/17 Python
浅谈编码,解码,乱码的问题
2016/12/30 Python
python实现求最长回文子串长度
2018/01/22 Python
Scrapy使用的基本流程与实例讲解
2018/10/21 Python
python调用动态链接库的基本过程详解
2019/06/19 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
2019/06/25 Python
python zip()函数使用方法解析
2019/10/31 Python
python中if嵌套命令实例讲解
2021/02/25 Python
css3中检验表单的required,focus,valid和invalid样式
2014/02/21 HTML / CSS
意大利网上书店:LaFeltrinelli
2020/06/12 全球购物
企划经理的岗位职责
2013/11/17 职场文书
军训自我鉴定
2013/12/14 职场文书
党员年度个人总结
2015/02/14 职场文书
司法廉洁教育心得体会
2016/01/20 职场文书
2016年学校党支部公开承诺书
2016/03/25 职场文书