create.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>htmlphp</title>
</head>
<body>
<form action="toStatic.php" method="post">
标题:<input type="text" name="headline" /><br />
内容:<textarea name="content"></textarea>
<input type="submit" value="提交" />
</form>
</body>
</html>
toStatic.php
<?php
//Replace函数用于将从模版文件中读取的内容中的关键字替换成变量中的内容
function Replace($row, $headline = '', $content = '')
{
//替换参数中的关键字
$row = str_replace("%headline%", $headline, $row);
$row = str_replace("%content%", $content, $row);
//返回替换后的结果
return $row;
}
//主程序
$connection = mysql_connect("localhost", "root", "123456") or die(mysql_error());
$db_select=mysql_select_db("test") or die("没有连接上数据库".mysql_error());
//新添加的文章信息
$headline = $_POST['headline'];
$content = $_POST['content'];
//echo $headline;
//
//print_r($_POST);
//生成文件名,这里用日期时间
$filename = 'S'.date("YmdHis").'.html';
//执行SQL语句
$sql = "insert into artile(id,headline,content,filename)values(null,'$headline', '$content', '$filename')";
$res = mysql_query($sql);
//根据SQL执行语句返回的bool型变量判断是否插入成功
if($res){
//模版文件指针
$f_tem = fopen("template.html","r");
//生成的文件指针
$f_new = fopen($filename,"w");
//循环读取模版文件,每次读取一行
while(!feof($f_tem))
{
$row = fgets($f_tem);
//替换读入内容中的关键字
$row = Replace($row, $headline, $content);
//将替换后的内容写入生成的HTML文件
fwrite($f_new, $row);
}
//关闭文件指针
fclose($f_new);
fclose($f_tem);
//提示
echo "OK!";
}else{
echo "Failed!";
}
mysql_close();
?>
template.html
<html>
<head>
<title>%headline%</title>
</head>
<body>
<div id = "headline">%headline%</div>
<div id = "content">%content%</div>
</body>
</html>
数据库结构
CREATE TABLE IF NOT EXISTS `artile` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`headline` varchar(255) CHARACTER SET utf8 NOT NULL,
`content` varchar(255) CHARACTER SET utf8 NOT NULL,
`filename` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
php静态化html网页原理
最新推荐文章于 2021-02-25 14:31:09 发布
PHP页面的静 态化很有必要,尤其是在
CMS
系统中,一些内容一旦生成,基本上不会有变化,这时如果用
html
将页面静态 化,无疑会减少服务其解析PHP
页面的负担