來源:本站日期:2013-5-11
將自己的網(wǎng)頁生成靜態(tài)Html以后,雖然速度和SEO都有了很大的提升,但隨之而來的問題也來了,有些內(nèi)容需要在靜態(tài)Html里面動態(tài)顯示,比如點(diǎn)擊的次數(shù),每點(diǎn)擊一次,點(diǎn)擊數(shù)就添加1次,顯然這在純靜態(tài)頁面里面沒有辦法實現(xiàn),因為點(diǎn)擊的次數(shù)是保存在
將自己的網(wǎng)頁生成靜態(tài)Html以后,雖然速度和SEO都有了很大的提升,但隨之而來的問題也來了,有些內(nèi)容需要在靜態(tài)Html里面動態(tài)顯示,比如點(diǎn)擊的次數(shù),每點(diǎn)擊一次,點(diǎn)擊數(shù)就添加1次,顯然這在純靜態(tài)頁面里面沒有辦法實現(xiàn),因為點(diǎn)擊的次數(shù)是保存在數(shù)據(jù)庫里面的,而純靜態(tài)Html跟數(shù)據(jù)庫又沒有什么關(guān)系。
PHP跟ASP都是一樣的道理,想要在靜態(tài)Html里面顯示動態(tài)內(nèi)容,就只能把動態(tài)內(nèi)容封裝起來,然后再進(jìn)行調(diào)用,下面是我寫的一個PHP更新點(diǎn)擊數(shù)的例子,在下面這個文件里將點(diǎn)擊數(shù)更新封裝成一個PHP文件,最后以JS形式輸出,這樣就可以通過JS將動態(tài)點(diǎn)擊數(shù)輸出到靜態(tài)文件里面了,PHP更新點(diǎn)擊的源碼如下:
< ?php
include("global.php");
$row=$art->get_row($id);
mysql_query("update `".PRE."article` set `hits`=`hits`+1 where id=".intval($row['id'])) or die (showmsg("更新點(diǎn)擊數(shù)出現(xiàn)錯誤!"));
$rows=mysql_fetch_assoc(mysql_query($sql="select * from doorsjk_article where id=".intval($row["id"])));
$str=$rows["hits"];
?>
< ?php
echo "document.write('".$str."');\n";
?>
include("global.php");這句是包含的連接數(shù)據(jù)庫文件,$row=$art->get_row($id);這句是接受過來的ID,已經(jīng)做成類來調(diào)用了,得到的就是接受過來的ID,下面的就很容易理解了,就是將數(shù)據(jù)表的字段hits添加1,而最后的echo就是將新的hits輸出出來。
使用時只需要將更新次數(shù)的PHP文件包含進(jìn)來即可
<script language=javascript src=/include/news.php?id=".$row['id']."></script>
靜態(tài)頁面還可以調(diào)用文本等來進(jìn)行更新點(diǎn)擊的次數(shù),這里的例子是點(diǎn)擊數(shù)的字段保存在數(shù)據(jù)庫里面的,也是大多數(shù)都使用的方法,舉一反三,也可以將“最新文章”,“文章評論”等動態(tài)的內(nèi)容在靜態(tài)Html里面通過JS文件來進(jìn)行調(diào)用。