php生成静态页面的简单示例


Posted in PHP onApril 17, 2014

发布新闻,实现新闻页面静态化,真静态

add.php

<html>
 <head>添加新闻</head> <body>
   <form method="post" action="doadd.php"> 
     新闻标题:<input type="text" name="title" size="100"><br>
     新闻内容:<textarea name="content" cols="100" rows="25"></textarea><br>
     <input type="submit" name="提交">
   </form>
 </body>
</html>

config.php

<?php 
 define("HOST", "localhost");
 define("USER", "justfan");
 define("PWD", "justfan");
 define("DB", "justfanDB");
 define("PORT", "3360");
?>

DB_class.php

<?php
 class DB
 {
  private $host = '';
  private $uname = '';
  private $pwd = '';
  private $port = '';
  private $db = '';
     public static $instance = null;   private function __construct($host , $uname , $pwd , $port , $db)
  {
   $this->host = $host;
   $this->uname = $uname;
   $this->port = $port;
   $this->pwd = $pwd;
   $this->db = $db;
   mysql_connect($host,$uname,$pwd);
   mysql_select_db($this->db);
  }
  public static function Instance()
  {
   if(Db::$instance==null){
    include 'config.php';
    return Db::$instance = new DB(HOST, USER, PWD, PORT, DB);
   } 
   else 
    return Db::$instance;
  }
  public function query($sql)
  {
   mysql_query("SET NAMES UTF8");
   $query = mysql_query($sql) or die($sql." error");
   if(!$query) return false;
   else   return $query;
  }
  
  public function getAll($sql)
  {
   $query = $this->query($sql);
   if($query)
   {
    while($ret = mysql_fetch_assoc($query))
    {
     $result[] = $ret;
    }
   }   
   return $result;
  }
  
 }
?>

doadd.php

<?php 
include 'DB_class.php';
$db = DB::Instance();
$title=$_POST["title"];
$content=$_POST["content"]; 
$num = uniqid();
$houzui=".html";
$filename=date('Ymd').'/'.$num.$houzui;
$sql="insert into news(title,content,path) values ('{$title}' , '{$content}' , '{$filename}')";
$query = $db->query($sql);
$fp=fopen("model.htm","r");
$str=fread($fp,filesize("model.htm"));
$str=str_replace("{title}",$title,$str);
$str=str_replace("{content}",$content,$str);
fclose($fp);
$dir = dirname($filename);
if(!is_dir($dir)){
 mkdir($dir);
}
$handle=fopen($filename,"w"); 
fwrite($handle,$str); 
fclose($handle);
 
echo "<a href={$filename} target=_blank>查看刚才添加的新闻</a>";
echo "<a href='add.php'>添加新闻</a>";
?>

model.htm

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <script type="text/javascript" src="//code.jquery.com/jquery-1.10.2.min.js"></script>
 <script type="text/javascript" src="../bootstrap/js/bootstrap.min.js"></script>
 <link rel="stylesheet" href="../bootstrap/css/bootstrap.min.css">
 <link rel="stylesheet" href="../bootstrap/css/common.css">
 <title>{title}</title>
</head>
  <body>
    <div class="container">
      <div class="jumbotron">
        <h1>{title}</h1>
        <p>{content}</p>
      </div>
    </div>
  </body>
</html>
PHP 相关文章推荐
使用sockets:从新闻组中获取文章(一)
Oct 09 PHP
php将数据库中的电话号码读取出来并生成图片
Aug 31 PHP
php 字符串函数收集
Mar 29 PHP
PHP中ob_start函数的使用说明
Nov 11 PHP
一个基于phpQuery的php通用采集类分享
Apr 09 PHP
php cli换行示例
Apr 22 PHP
PHP自带函数给数字或字符串自动补齐位数
Jul 29 PHP
支付宝接口开发集成支付环境小结
Mar 17 PHP
PHP微信支付开发实例
Jun 22 PHP
php获取linux命令结果的实例
Mar 13 PHP
Laravel Validator 实现两个或多个字段联合索引唯一
May 08 PHP
Laravel 框架控制器 Controller原理与用法实例分析
Apr 14 PHP
php文件服务实现虚拟挂载其他目录示例
Apr 17 #PHP
php实现12306余票查询、价格查询示例
Apr 17 #PHP
PHP5.5在windows安装使用memcached服务端的方法
Apr 16 #PHP
纯PHP生成的一个树叶图片画图例子
Apr 16 #PHP
通过dbi使用perl连接mysql数据库的方法
Apr 16 #PHP
php sybase_fetch_array使用方法
Apr 15 #PHP
强制PHP命令行脚本单进程运行的方法
Apr 15 #PHP
You might like
S900/ ETON E1-XM 收音机
2021/03/02 无线电
简化php模板页面中分页代码的解析
2009/02/06 PHP
国外比较好的几个的Php开源建站平台小结
2010/04/22 PHP
基于thinkPHP实现的微信自定义分享功能示例
2016/09/23 PHP
PHP处理bmp格式图片的方法分析
2017/07/04 PHP
javascript同步Import,同步调用外部js的方法
2008/07/08 Javascript
Ajax 数据请求的简单分析
2011/04/05 Javascript
jQuery中判断一个元素是否为另一个元素的子元素(或者其本身)
2012/03/21 Javascript
Jquery中使用setInterval和setTimeout的方法
2013/04/08 Javascript
单元选择合并变色示例代码
2014/05/26 Javascript
jquery事件preventDefault()方法用法实例
2015/01/16 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
2016/06/12 Javascript
详解Node.Js如何处理post数据
2016/09/19 Javascript
Javascript动画效果(1)
2016/10/11 Javascript
详解用node编写自己的cli工具
2017/05/23 Javascript
Vue精简版风格概述
2018/01/30 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
2018/03/09 jQuery
Vue 中使用 CSS Modules优雅方法
2018/04/09 Javascript
ES6 Set结构的应用实例分析
2019/06/26 Javascript
vue-cli4.x创建企业级项目的方法步骤
2020/06/18 Javascript
[01:32]TI奖金增速竟因它再创新高!DOTA2勇士令状不朽珍藏Ⅰ饰品欣赏
2018/05/18 DOTA
Python实现生成简单的Makefile文件代码示例
2015/03/10 Python
Python根据区号生成手机号码的方法
2015/07/08 Python
Pandas-Cookbook 时间戳处理方式
2019/12/07 Python
python安装cx_Oracle和wxPython的方法
2020/09/14 Python
Urban Outfitters美国官网:美国生活方式品牌
2016/08/26 全球购物
世界上最大的隐形眼镜商店:1-800 Contacts
2018/11/03 全球购物
意大利在线药房:shop-farmacia.it
2019/03/12 全球购物
时尚孕妇装:HATCH Collection
2019/09/24 全球购物
数据库笔试题
2013/05/09 面试题
英语感恩演讲稿
2014/01/14 职场文书
综合素质自我评价怎么写
2014/09/14 职场文书
群众路线查摆问题整改措施思想汇报
2014/10/10 职场文书
2015年国庆节新闻稿
2015/07/18 职场文书
预备党员的思想汇报,你真的会写吗?
2019/06/28 职场文书
用python画城市轮播地图
2021/05/28 Python