將自己的網(wǎng)頁(yè)生成靜態(tài)Html以后,雖然速度和SEO都有了很大的提升,但隨之而來(lái)的問(wèn)題也來(lái)了,有些內(nèi)容需要在靜態(tài)Html里面動(dòng)態(tài)顯示,比如點(diǎn)擊的次數(shù),每點(diǎn)擊一次,點(diǎn)擊數(shù)就添加1次,顯然這在純靜態(tài)頁(yè)面里面沒(méi)有辦法實(shí)現(xiàn),因?yàn)辄c(diǎn)擊的次數(shù)是保存在數(shù)據(jù)庫(kù)里面的,而純靜態(tài)Html跟數(shù)據(jù)庫(kù)又沒(méi)有什么關(guān)系。
PHP跟ASP都是一樣的道理,想要在靜態(tài)Html里面顯示動(dòng)態(tài)內(nèi)容,就只能把動(dòng)態(tài)內(nèi)容封裝起來(lái),然后再進(jìn)行調(diào)用,下面是我寫的一個(gè)PHP更新點(diǎn)擊數(shù)的例子,在下面這個(gè)文件里將點(diǎn)擊數(shù)更新封裝成一個(gè)PHP文件,最后以JS形式輸出,這樣就可以通過(guò)JS將動(dòng)態(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)錯(cuò)誤!"));
$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ù)庫(kù)文件,$row=$art->get_row($id);這句是接受過(guò)來(lái)的ID,已經(jīng)做成類來(lái)調(diào)用了,得到的就是接受過(guò)來(lái)的ID,下面的就很容易理解了,就是將數(shù)據(jù)表的字段hits添加1,而最后的echo就是將新的hits輸出出來(lái)。
使用時(shí)只需要將更新次數(shù)的PHP文件包含進(jìn)來(lái)即可
<script language=javascript src=/include/news.php?id=".$row['id']."></script>
靜態(tài)頁(yè)面還可以調(diào)用文本等來(lái)進(jìn)行更新點(diǎn)擊的次數(shù),這里的例子是點(diǎn)擊數(shù)的字段保存在數(shù)據(jù)庫(kù)里面的,也是大多數(shù)都使用的方法,舉一反三,也可以將“最新文章”,“文章評(píng)論”等動(dòng)態(tài)的內(nèi)容在靜態(tài)Html里面通過(guò)JS文件來(lái)進(jìn)行調(diào)用。
注:相關(guān)網(wǎng)站建設(shè)技巧閱讀請(qǐng)移步到建站教程頻道。
收藏本文新聞熱點(diǎn)
疑難解答
圖片精選