比如你的动态显示页面为display.php?id=1的话你可以在diplay里判断一下是否在对应目录存在对应id的文件名(这里假设文件为id号+html即1.html,2.html,...)
你判断 $id."html"这个文件是否存在于服务器,如果存在就直接跳转到这个页面,要是不存在的话就创建(建义用一个函数来创建,这样对页面改动不大,比如createHTML($_GET['id']),至于这个函数怎么写,我想你应该知道)然后再跳转

解决方案 »

  1.   

    假设你显示文章的页面为
    showNews.php?id=34
    那么可以这么做
    ob_start();
    //你的正常程序代码
    $html=ob_get_contents();
    ob_end_clean();
    $fp=fopen($_GET['id'].".htm", "w");
    fwrite($fp, $html);
    fclose($fp);
      

  2.   

    我用的就是ice_berg16(寻梦的稻草人)的方法,可是有个疑问。
    如此以来是不是动态和静态是两套系统了?只有访问动态的时候才会产生静态。
    在静态之间访问没什么关系,但当有提交表单发生的时候肯定要转到在动态页面处理。
    如此以来批量产生静态就会速度很慢。。
    看看我的讨论帖子
    http://community.csdn.net/Expert/topic/4561/4561298.xml?temp=.1808435
      

  3.   

    如此以来是不是动态和静态是两套系统了?只有访问动态的时候才会产生静态。
    等生成静态后,你的链接就可以指向静态页面了,而不是指定showNews.php
    这个页面可以放在后台专门用来生成静态页面,前台不需要它了。
      

  4.   

    那在访问该页面的时候不能马上看到结果了,除非最后再用header跳转。