先做一个静态页tpl.htm:
以下是它的代码:
<html>
<head><title>{-标题-}</title></head>
<body bgcolor={-背景-}></body>
</html>以下是程序do.php:<?php
$files='xxx.htm';//这是生成后的页,名字一般用date(YmdHis)生成;
$tpl='tpl.htm';
$new_title='新标题';
$new_bg='#ffffff';
//先用fread调用$tpl
$fp=fopen($tpl,"r");
$tpl=fread($fp,filesize($tpl));//替换;
$content=str_replace('{-标题-}',$new_title,$tpl);
$content=str_replace('{-背景-}',$new_bg,$tpl);//存储新页;$fp=fopen($files,"w");
$fputs=fputs($fp,$content);
if ($fputs)
{
echo '完成';
fclose($fp);
}
?>如是linux主机,要将所在目录设为777属性
以下是它的代码:
<html>
<head><title>{-标题-}</title></head>
<body bgcolor={-背景-}></body>
</html>以下是程序do.php:<?php
$files='xxx.htm';//这是生成后的页,名字一般用date(YmdHis)生成;
$tpl='tpl.htm';
$new_title='新标题';
$new_bg='#ffffff';
//先用fread调用$tpl
$fp=fopen($tpl,"r");
$tpl=fread($fp,filesize($tpl));//替换;
$content=str_replace('{-标题-}',$new_title,$tpl);
$content=str_replace('{-背景-}',$new_bg,$tpl);//存储新页;$fp=fopen($files,"w");
$fputs=fputs($fp,$content);
if ($fputs)
{
echo '完成';
fclose($fp);
}
?>如是linux主机,要将所在目录设为777属性
$name=$info_id.".htm";
$newname="../news/$name";
//建立临时文件
$fp = fopen("../news/tmp.htm", "w");
fclose($fp);
//将新闻网页newsdetail.php 转换为静态的网页
$l="php ../index/newsdetail.php > ../news/tmp.htm ";
system(" $l ,$arr ");
//去掉前四行多余信息行 将结果给最终生成的静态页
$del=" tail +4 ../news/tmp.htm > $newname";
passthru(" $del");
//删除临时文件
unlink("../news/tmp.htm");
/**
* 作者: 徐祖宁 (唠叨)
*
* 类: outbuffer
* 功能: 封装部分输出控制函数,控制输出对象。
*
* 方法:
* run($proc) 运行php程序
* $proc php程序名
* display() 输出运行结果
* savetofile($filename) 保存运行结果到文件,一般可用于生成静态页面
* $filename 文件名
* loadfromfile($filename) 装入保存的文件
* $filename 文件名
*
* 示例:
* 1.直接输出
* require_once "outbuffer.php";
* $out = new outbuffer();
* $out->run("test.php");
* $out->display();
*
* 2.保存为文件
* require_once "outbuffer.php";
* require_once "outbuffer.php";
* $out = new outbuffer("test.php");
* $out->savetofile("temp.htm");
*
* 3.装入并输出文件
* require_once "outbuffer.php";
* $out = new outbuffer();
* $out->loadfromfile("temp.htm");
* $out->display();
*
*/class outbuffer {
var $length;
var $buffer;
function outbuffer($proc="") {
$this->run($proc);
}
function run($proc="") {
ob_start();
include($proc);
$this->length = ob_get_length();
$this->buffer = ob_get_contents();
$this->buffer = eregi_replace("\r?\n","\r\n",$this->buffer);
ob_end_clean();
}
function display() {
echo $this->buffer;
}
function savetofile($filename="") {
if($filename == "") return;
$fp = fopen($filename,"w");
fwrite($fp,$this->buffer);
fclose($fp);
}
function loadfromfile($filename="") {
if($filename == "") return;
$fp = fopen($filename,"r");
$this->buffer = fread($fp,filesize($filename));
fclose($fp);
}
}
?>
我要好好的学,请给指点,实例最好啊。
关键是自己清楚程序运行的过程,如何提交表单,如何导入到数据库,如何读取并显示数据,带着这些问题,你就会很快做好。多看点资料,CSDN上有好多高手可以为你解决很多实际操作中遇到的意想不到的问题。
时,看到的应该是htm文件。而且,新增的新闻不是马上发布,要待审批后才能发布,
也就是说,在审批完成后才生成html文件。如果在每条新闻中加一个字段,比如filehtml,
在生成一个html文件后,在该字段填入比如20031230.html。那么在读新闻列表时,
就根据每条新闻的id去取相应的html,比如
<?
$sql=mysql_query("select...from...");
while($r=mysql_fetch_array($sql))
{
?>
<a href="<? echo($r['filehtml'])?>">xxxx</a>
<?
}
?>
这样的方法可以吗?如果可以的话,我不知道怎么将提交到数据库中的东西生成HTML咯,
请指教
JAVASCRIP引入PHP页,这PHP页就是个象留言本一样做啊,后台有个数据库再用PHP的
echo 输出不就行了,我看到的许多大的网站也是这样开发的啊!
<!-- InstanceBeginEditable name="jsk" -->
<script>var tc_user="";var tc_class="7";</script>
<script src="http://stat.t2t2.com/stat.js"></script> <br>
<script src="http://www.hycompany.com/count/count.php" language="">
</script>
<br>
<br>
<br>
<br>
<br>
<br>
<!-- InstanceEndEditable --><br>
</div>
</div>
</td>
</tr>
</table>
</td>
<td bgcolor="#F0F0F0" valign="top" align="center" width="585"><!-- InstanceBeginEditable name="EditRegion5" -->
<div align="center"></div>
</body>