生成HTML的方法实在是太多了,我来讲讲我现在要讲的一个方法,想好一个从头到尾的思路,拿一个新闻系统作为实例.powered by 25175.net
假设的两个表:news(ID,title,document,time),news_content(ID,news_id,username,document,time)
文件名:我们将news的主键(ID)作为生成.HTML的文件名
新建news_list.txt
<ahref="[$news->id].html"target="_blank">[$news->title]</a>[$news->time]<br/>
新建page.txt
<divalign="center"><ahref="news_list_[$page->first].html">第一页</a><ahref="news_list_[$page->prev].html">上一页</a><ahref="news_list_[$page->next].html">下一页</a><ahref="news_list_[$page->last].html">最后页</a></div>
新建news_content_list.txt
<tr>
<td>[$news_content->username]</td>
<td>[$news_content->document]</td>
<td>[$news_content->time]</td>
</tr>
新建news_document.txt
<html>
<head>
</head>
<body>
...
<h1align="center"><b>[$news->title]</b></h1>
<divalign="center">[$news->time]</div>
<div>[$news->document]</div>
...
相关评论:
[$news_content]
</body>
</html>
分页列表:
<%
functionMPage(rs){

varpagesize=15;
vartotalpage=parseInt(con.Execute("selectcount(ID)from("+rs.Source+")").Fields(0));
totalpage=totalpage%pagesize==0?parseInt(totalpage/pagesize):parseInt(totalpage/pagesize)+1;
varTemplate="";
//读文件Template.txt到Template变量中
/*
<html>
<head>
</head>
<body>
...
<div>[$news_list]</div>
...
<div>[$page]</div>
...
[$news_content]
</body>
</html>
*/
varnews_list="";
//读文件news_list.txt到news_list变量中
/*
<ahref="[$news->id].html"target="_blank">[$news->title]</a>[$news->time]<br/>
*/
varpage="";
//读文件page.txt到news_list变量中
/*
<divalign="center">
<ahref="news_list_[$page->first].html">第一页</a>
<ahref="news_list_[$page->prev].html">上一页</a>
<ahref="news_list_[$page->next].html">下一页</a>
<ahref="news_list_[$page->last].html">最后页</a>
</div>
*/
for(vari=0,pos=1;i<totalpage;i++,pos++){
if(pos!=1){rs.MoveFirst();rs.Move((pos-1)*pagesize);}
varostring=Template;
varotemp="";
for(varj=0;j<pagesize;j++){
vartemp=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));
varfilename="news_list_"+pos+".html";
//将ostring的值写到文件filename中
}
}
%>