Home  >  Article  >  php教程  >  php生成html静态页面完整实例

php生成html静态页面完整实例

WBOY
WBOYOriginal
2016-05-25 16:44:371147browse

如果你是一个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[&#39;title&#39;];
$content = $_POST[&#39;content&#39;]; //获得表单变量
//以下建立一文本文档,其值自动计数
$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&hellip;&hellip;&hellip;.添加一条新闻便自动加上1
//以下用SQL语句添加数据至表 news
$sql = "insert into news (id,title,content,path) values (&#39;&#39;,&#39;" . $title . "&#39;,&#39;" . $content . "&#39;,&#39;" . $path . "&#39;)";
$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 &#39;$this->ut&#39;");
    }
    function query($sql, $type = &#39;&#39;) {
        if (!($query = mysql_query($sql))) $this->show(&#39;Say:&#39;, $sql);
        return $query;
    }
    function show($message = &#39;&#39;, $sql = &#39;&#39;) {
        if (!$sql) echo $message;
        else echo $message . &#39;<br>&#39; . $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(" ", "&nbsp", $content));
        return $content;
    }
}
$db = new mysql("localhost", "root", "", "database", "utf8");
?>


文章地址:

转载随意^^请带上本文地址!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn