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 相关文章推荐
将RTF格式的文件转成HTML并在网页中显示的代码
Oct 09 PHP
mysql5写入和读出乱码解决
Nov 25 PHP
兼容性比较好的PHP生成缩略图的代码
Jan 12 PHP
php入门学习知识点一 PHP与MYSql连接与查询
Jul 14 PHP
无JS,完全php面向过程数据分页实现代码
Aug 27 PHP
PHP的APC模块实现上传进度条
Oct 27 PHP
php读取txt文件并将数据插入到数据库
Feb 23 PHP
THinkPHP获取客户端IP与IP地址查询的方法
Nov 14 PHP
浅析PHP数据导出知识点
Feb 17 PHP
PHP中的访问修饰符简单比较
Feb 02 PHP
PHP中的Iterator迭代对象属性详解
Apr 12 PHP
Laravel如何实现自动加载类
Oct 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
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
php cookie 登录验证示例代码
2009/03/16 PHP
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
php实现水印文字和缩略图的方法示例
2016/12/29 PHP
php修改数组键名的方法示例
2017/04/15 PHP
图像替换新技术 状态域方法
2010/01/28 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
2012/10/11 Javascript
js猜数字小游戏的简单实现代码
2013/07/02 Javascript
超炫的jquery仿flash导航栏特效
2014/11/11 Javascript
javascript关于继承的用法汇总
2014/12/20 Javascript
jQuery实现鼠标悬停显示提示信息窗口的方法
2015/04/30 Javascript
《JavaScript高级编程》学习笔记之object和array引用类型
2015/11/01 Javascript
jQuery简单入门示例之用户校验demo示例
2016/07/09 Javascript
Javascript使用function创建类的两种方法(推荐)
2016/11/19 Javascript
微信小程序实现页面跳转传值的方法
2017/10/12 Javascript
javascript中的replace函数(带注释demo)
2018/01/07 Javascript
layui实现点击按钮给table添加一行
2018/08/10 Javascript
vue2.0 使用element-ui里的upload组件实现图片预览效果方法
2018/09/04 Javascript
Echart折线图手柄触发事件示例详解
2018/12/16 Javascript
Layui数据表格 前后端json数据接收的方法
2019/09/19 Javascript
Vue中函数防抖节流的理解及应用实现
2020/04/24 Javascript
[02:48]DOTA2英雄基础教程 拉席克
2013/12/12 DOTA
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
彻底理解Python list切片原理
2017/10/27 Python
Python实现迭代时使用索引的方法示例
2018/06/05 Python
python二维列表一维列表的互相转换实例
2018/07/02 Python
numpy.ndarray 交换多维数组(矩阵)的行/列方法
2018/08/02 Python
python3.7 利用函数os pandas利用excel对文件名进行归类
2019/09/29 Python
Python多线程获取返回值代码实例
2020/02/17 Python
学生宿舍管理制度
2014/01/30 职场文书
2014年党员承诺书范文
2014/05/20 职场文书
美容院合作经营协议书
2014/10/10 职场文书
2015年电话销售工作总结范文
2015/04/20 职场文书
2015年幼儿园中班工作总结
2015/04/25 职场文书
《夜莺的歌声》教学反思
2016/02/22 职场文书
详解CSS玩转图片Base64编码
2021/05/25 HTML / CSS