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

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");
 }
?>

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

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

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

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

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

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

时间: 2024-10-29 03:23:53

php添加文章时生成静态HTML文章的实现代码_php技巧的相关文章

PHP生成静态HTML文档实现代码_php技巧

利用PHP,将数据库中的文章数据生成单个的HTML文档.首先,有利于搜索引擎的收录.其次,避免数据库中的字段暴露在地址栏上,更安全. 给出代码: <?php //引入数据库配置文件 include( dirname(dirname(__FILE__))."\include\config.php" ); /** * * 将数据库中的文章生成单个HTML文件. * @param Date $Date * @param Time $Time * @param String $Conte

php将数据库中所有内容生成静态html文档的代码_php技巧

复制代码 代码如下: <?php /* author:www.5dkx.com done:生成html文档 date:2009-10-27 */ require_once("conn.php"); if($_GET['all']) { /*获取数据库记录,以便于生成html文件有个文件名*/ $sqlquery = "select * from $tbname"; $result = mysql_query($sqlquery,$conn)or die(&qu

php生成静态文件的多种方法分享_php技巧

第一种:将php动态页面内容生成静态 复制代码 代码如下: ob_start();#开启服务器缓存 include_once 'Index.php'; $ctx=ob_get_contents();#获取缓存 ob_end_clean();#清空缓存 $fh=fopen("index.html","w+"); fwrite($fh,$ctx);#写入html,生成html fclose($fh); /* 1.Flush:刷新缓冲区的内容,输出. 函数格式:flush

php编写批量生成不重复的卡号密码代码_php技巧

闲的蛋疼的时候,顺便加强下自己对PHP中数组操纵的一些技巧,就写了下面的一段小代码,可以随机生成卡号密码对应的数组,并且自动去重复,思路没有,纯粹瞎掰. <?php header('Content-Type:text/html; charset=utf-8'); function MakeCard() { set_time_limit(0); //处理缓冲区 ob_end_clean(); ob_implicit_flush(true); echo str_pad(" ", 25

php 批量生成html,txt文件的实现代码_php技巧

首先建立一个conn.php的文件用来链接数据库 复制代码 代码如下: <?php    $link = mysql_connect("mysql_host" , "mysql_user" , "mysql_password" )or die("Could not connect : " . mysql_error());     mysql_query("set names utf8");    

对象失去焦点时自己动提交数据的实现代码_php技巧

解决这个问题,得需要使用onblur来实现.下面代码并非是专案实现代码,只是模拟相同的功能. 复制代码 代码如下: <!--Ajax实现页面不闪烁,一直是Insus.NET所喜欢使用的--> <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1&quo

php文章内容分页并生成相应的htm静态页面代码_php技巧

复制代码 代码如下: <?php $url='test.php?1=1'; $contents="fjka;fjsa;#page#批量生成分成文件并且加上分页代码"; $ptext ='#page#'; ContentsPages($url,$contents,$ptext) /** * 函数名:ContentsPages * 功能:文章内容分页 * 参数:$url文章内容页URL 类型string,$contents文章内容页内容 类型string,$ptext分页标识 类型s

php 静态页面中显示动态内容_php技巧

最近在做一个站点时,需要生成静态页面,但是生成的静态页面中有些内容是需要动态获取的,怎不能每天生成一下吧.. 最后上网查了一下,再加上个要总结,呵....终于实现了..发出来,大家一起研究..呵... <span class="STYLE1">应用一</span>:文章计数,获取动态内容 计数页:count.php 复制代码 代码如下: <?php require_once './global.php'; $DB->query("updat

在WordPress的后台中添加顶级菜单和子菜单的函数详解_php技巧

添加设置页面-add_menu_page函数add_menu_page(),这个函数是往后台添加顶级菜单先,也就是和"外观"."插件"等一样的顶级菜单. 函数介绍如下: <?php add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position ); //page_title页面title标签信息 //$menu_title 菜单