1.資料庫裡建立以下字段:
titie(文章標題)
content(文章內容)
path(html檔案路徑)
2.在表單form提交
title
和content
。之後存入資料庫
3.建立乙個model.html來進行下列操作
model示意源**:
此新聞的標題:
此新聞的內容:
這裡與是一起寫進去的。之後利用替換來替換內容
4.動態產生html檔案的
php檔案
add.php
示意**如下:
<?php
連線資料庫
$title=$_post["title"];//獲取表單變數
$content=$_post["content"]; //獲得表單變數
//以下建立一文字文件,其值自動計數
$countfile="count.txt";
if(!file_exists($countfile))
fopen($countfile,"w"); //如果此檔案不存在,則自動建立乙個
$fp=fopen($countfile,"r"); //用唯讀的方法開啟剛剛建立的
txt文件
$num=fgets($fp,20); //讀取裡面
20位元組的內容(如果沒有這麼多就按照有多少讀多少的來)
$num=$num+1; //每次其值自動加一
fclose($fp);
$fp=fopen($countfile,"w");
fwrite($fp,$num); //更新其值
fclose($fp);
//利用上面自動計數的值獲得
html
的路徑$path
$suffix=」.html」;
$path=$num.$suffix;
//這樣形成的路徑是自動增長的,如
1.html,2.html,3.html……….
新增一條新聞便自動加上1
//以下用
sql語句新增資料至表
news
$sql=」」;
$query=mysql_query($sql);
//以下為關鍵之處,把從表單獲得的資料替換模板中的
,標記
$fp=fopen("model.htm","r"); //唯讀開啟模板
$str=fread($fp,filesize("mode.htm"));//讀取模板中內容
$str=str_replace("",$title,$str);
$str=str_replace("",$content,$str);//替換內容
fclose($fp);
$handle=fopen($path,"w"); //寫入方式開啟新聞路徑
fwrite($handle,$str); //把剛才替換的內容寫進生成的
html
檔案
fclose($handle);
//收尾工作:
總結:就是利用replace和file函式來進行巧妙的替換設計。達到生成靜態頁面的效果。
生成靜態頁面的方法
對於 特別是cms系統中,生成靜態頁面是必不可少的,靜態頁面不用去和資料庫打交道,可以提高頁面的訪問速度。生成靜態頁面的方法一般有 兩種,一種是以模板的形式生成,第二種是直接根據url來生成靜態頁面。以模板形式生成的原理就是字串替換,在.net中已經提供了乙個字串替換的函式 replace 用模板生...
PHP生成靜態頁面的方法
雖然 方法 很多,但使用起來簡便容易的,我覺得還是先判斷已經生成的首頁檔案的生成時間和現有時間之間的差值,如果滿足某個值就開始生成,這種方法比較來得容易,不多說了,開始吧!在開始之前還是提一下三個函式吧 ob start ob end clean ob get contents ob start 是...
ASP生成靜態頁面的方法
asp2html with templet 我希望大家看到該標題就能讓想象到它的功能 1,with templet意思是,生成的頁面架構將採用某個已設定的模板,在此之前我的一篇教程中介紹過,希望各位在看本教程之前對asp採用模板應熟悉下。當然,不看也沒有問題,本教程同樣會提及精華部分的 具體參考 h...