php生成html静态页面完整实例
如果你是一个seo工作者你估计要求把php文件全部转换成html页面了,这样可以对网站排名有好处,同时也可以减轻服务器apache负载了,下面我来介绍一个php生成静态页面实例。
addform.php文件
<form action="add.php" method="post" > 新闻标题: <input type="text" name="title" /><br> 新闻内容:<br> <textarea name="content" rows="10" cols="50" > </textarea><br> <input type="submit" name="submit" value="提交"/> </form>
add.php文件
<?php
require_once ("mysql_inc.php"); //引用conn.php,连接数据库
$title = $_POST['title'];
$content = $_POST['content']; //获得表单变量
//以下建立一文本文档,其值自动计数
$countfile = "count.txt";
if (!file_exists($countfile)) {
fopen($countfile, "w"); //如果此文件不存在,则自动建立一个
}
$fp = fopen($countfile, "r");
$num = fgets($fp, 20);
$num = $num + 1; //每次其值自动加一
fclose($fp);
$fp = fopen($countfile, "w");
fwrite($fp, $num); //更新其值
fclose($fp);
//利用上面自动计数的值获得HTML的路径$path
$houzui = ".html";
$path = $num . $houzui;
//这样形成的路径是自动增长的,如1.html,2.html,3.html……….添加一条新闻便自动加上1
//以下用SQL语句添加数据至表 news
$sql = "insert into news (id,title,content,path) values ('','" . $title . "','" . $content . "','" . $path . "')";
$query = mysql_query($sql);
//以下为关键之处,把从表单获得的数据替换模板中的{title},{content}标记
$fp = fopen("mode.html", "r"); //只读打开模板
$str = fread($fp, filesize("mode.html")); //读取模板中内容
$str = str_replace("{title}", $title, $str);
$str = str_replace("{content}", $content, $str); //替换内容
fclose($fp);
$handle = fopen($path, "w"); //写入方式打开新闻路径
fwrite($handle, $str); //把刚才替换的内容写进生成的HTML文件
fclose($handle);
//收尾工作:
echo "<a href=$path target=_blank>查看刚才添加的新闻</a>";
?>mysql_inc.php数据库连接文件
<?php
class mysql {
private $host; //?????
private $name; //?û???
private $pass; //????
private $database; //??????
private $ut; //?????
function __construct($host, $name, $pass, $database, $ut) {
$this->host = $host;
$this->name = $name;
$this->pass = $pass;
$this->database = $database;
$this->ut = $ut;
$this->connect();
}
function connect() {
$link = mysql_connect($this->host, $this->name, $this->pass) or die($this->error());
mysql_select_db($this->database, $link) or die("û??????" . $this->database);
mysql_query("SET NAMES '$this->ut'");
}
function query($sql, $type = '') {
if (!($query = mysql_query($sql))) $this->show('Say:', $sql);
return $query;
}
function show($message = '', $sql = '') {
if (!$sql) echo $message;
else echo $message . '<br>' . $sql;
}
function affected_rows() {
return mysql_affected_rows();
}
function result($query, $row) {
return mysql_result($query, $row);
}
function num_rows($query) {
return @mysql_num_rows($query);
}
function num_fields($query) {
return mysql_num_fields($query);
}
function free_result($query) {
return mysql_free_result($query);
}
function insert_id() {
return mysql_insert_id();
}
function fetch_row($query) {
return mysql_fetch_row($query);
}
function version() {
return mysql_get_server_info();
}
function close() {
return mysql_close();
}
function htmtocode($content) {
$content = str_replace("n", "<br>", str_replace(" ", " ", $content));
return $content;
}
}
$db = new mysql("localhost", "root", "", "database", "utf8");
?>教程链接:http://www.phprm.com/code/54292.html
随意转载~但请保留教程地址★