关于动态生成静态页面的方法

通过PHP实现从表单收集数据,并将其存储到数据库中,同时利用这些数据生成静态HTML页面,以此提升网站性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.数据库里建立以下字段:

Titie(文章标题)

Content(文章内容)

Path(html文件路径)

2.在表单form提交titlecontent。之后存入数据库

3.建立一个model.html来进行下列操作

Model示意源代码:

<html>

<body>

此新闻的标题:{title}

此新闻的内容:{content}

</body>

</html>

这里{title}{content}是一起写进去的。之后利用替换来替换内容

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);

//以下为关键之处,把从表单获得的数据替换模板中的{title},{content}标记

$fp=fopen("model.htm","r"); //只读打开模板

$str=fread($fp,filesize("mode.htm"));//读取模板中内容

$str=str_replace("{title}",$title,$str);

$str=str_replace("{content}",$content,$str);//替换内容

fclose($fp);

$handle=fopen($path,"w"); //写入方式打开新闻路径

fwrite($handle,$str); //把刚才替换的内容写进生成的HTML文件

fclose($handle);

//收尾工作:

?>



总结:就是利用replace和file函数来进行巧妙的替换设计。达到生成静态页面的效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值