分享

生成HTML的方法

 二宝么么哒 2010-09-25

生成HTML的方法

   生成HTML的方法实在是太多了,我来讲讲我现在要讲的一个方法,想好一个从头到尾的思路,拿一个新闻系统作为实例.powered by 25175.net

  假设的两个表:news(ID,title,document,time),news_content(ID,news_id,username,document,time)
  文件名:我们将news的主键(ID)作为生成.HTML的文件名

新建news_list.txt
<a href="[$news->id].html" target="_blank">[$news->title]</a> [$news->time]<br/> 


新建page.txt
<div align="center"><a href="news_list_[$page->first].html">第一页</a> <a href="news_list_[$page->prev].html">上一页</a> <a href="news_list_[$page->next].html">下一页</a> <a href="news_list_[$page->last].html">最后页</a></div> 


新建news_content_list.txt
<tr>
<td style="color:green;">[$news_content->username]</td>
<td>[$news_content->document]</td>
<td style="color:red;">[$news_content->time]</td>
</tr> 


新建news_document.txt
<html>
<head>
</head>
<body>
...
<h1 style="color:red;" align="center"><b>[$news->title]</b></h1>
<div align="center" style="color:green;">[$news->time]</div>
<div>[$news->document]</div>
...
相关评论:
[$news_content]
</body>
</html> 


分页列表:

<%
function MPage(rs) {
     var pagesize=15;
     var totalpage=parseInt(con.Execute("select count(ID) from ("+rs.Source+")").Fields(0));
     totalpage=totalpage%pagesize==0?parseInt(totalpage/pagesize):parseInt(totalpage/pagesize)+1;
     var Template="";
     //读文件Template.txt到Template变量中
     /*
     <html>
     <head>
     </head>
     <body>
     ...
     <div>[$news_list]</div>
     ...
     <div>[$page]</div>
     ...
     [$news_content]
     </body>
     </html>
     */
     var news_list="";
     //读文件news_list.txt到news_list变量中
     /*
     <a href="[$news->id].html" target="_blank">[$news->title]</a> [$news->time]<br/>
     */
     var page="";
     //读文件page.txt到news_list变量中
     /*
     <div align="center">
           <a href="news_list_[$page->first].html">第一页</a>
           <a href="news_list_[$page->prev].html">上一页</a>
           <a href="news_list_[$page->next].html">下一页</a>
           <a href="news_list_[$page->last].html">最后页</a>
     </div>
     */
     for(var i=0,pos=1;i<totalpage;i++,pos++) {
           if(pos!=1) {rs.MoveFirst();rs.Move((pos-1)*pagesize);}
           
           var ostring=Template;
           var otemp="";
           
           for(var j=0;j<pagesize;j++) {
                 var temp=news_list;
                 temp=temp.replace(/\[\$news->id\]/,String(rs.Fields("id")));
                 temp=temp.replace(/\[\$news->title\]/,String(rs.Fields("title")));
                 temp=temp.replace(/\[\$news->time\]/,String(rs.Fields("time")));
                 otemp+=temp;
           }
           
           ostring=ostring.replace(/\[\$news_list\]/,String(otemp));

           otemp=page;
           otemp=otemp.replace(/[$page->first]/,String(1));
           otemp=otemp.replace(/[$page->prev]/,String(pos-1));
           otemp=otemp.replace(/[$page->next]/,String(pos+1));
           otemp=otemp.replace(/[$page->last]/,String(totalpage));
           
           ostring=ostring.replace(/\[\$news_list\]/,String(otemp));
           
           var filename="news_list_"+pos+".html";
           //将 ostring 的值写到文件 filename 中
     }
     
}
%> 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多