在ASP中使用FSO组件生成HTML页面

时间:2022-01-14 13:28:35

'共有两个页面index.htm是首页.程序比较简单,主要是用了ASP里的文件操作对象。 

<!--index.htm-------------------------------------------------------------------------------> 

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 

"http://www.w3.org/TR/html4/loose.dtd"> 

<html> 

<head> 

<title>Untitled Document</title> 

<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 

</head> 

 

<body> 

<table width="770" border="0" align="center" cellpadding="0" cellspacing="0"> 

<tr> 

<td><form name="form1" method="post" action="send.asp"> 

<table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#CCFFFF"> 

<tr> 

<td height="20"><div align="center">发送消息</div></td> 

</tr> 

<tr> 

<td><div align="center"> 

<textarea name="msg" cols="100" rows="6"></textarea> 

</div></td> 

</tr> 

<tr> 

<td><div align="center"> 

<input type="submit" name="Submit" value="Submit"> 

<input type="reset" name="Submit2" value="Reset"> 

</div></td> 

</tr> 

</table> 

</form></td> 

</tr> 

</table> 

</body> 

</html> 

'//send.asp 

 

<% 

function chan_time(shijian)'转换日期时间函数 

s_year=year(shijian) 

if len(s_year)=2 then s_year="20"&s_year 

s_month=month(shijian) 

if s_month<10 then s_month="0"&s_month 

s_day=day(shijian) 

if s_day<10 then s_day="0"&s_day 

s_hour=hour(shijian) 

if s_hour<10 then s_hour="0"&s_hour 

s_minute=minute(shijian) 

if s_minute<10 then s_minute="0"&s_minute 

chan_time=s_year & s_month & s_day & s_hour & s_minute 

end function 

 

function chan_data(shijian) '转换日期时间函数 

s_year=year(shijian) 

if len(s_year)=2 then s_year="20"&s_year 

s_month=month(shijian) 

if s_month<10 then s_month="0"&s_month 

s_day=day(shijian) 

if s_day<10 then s_day="0"&s_day 

chan_data=s_year & s_month & s_day 

end function 

 

function chan_file(shijian)'转换日期时间函数 

s_month=month(shijian) 

if s_month<10 then s_month="0"&s_month 

s_day=day(shijian) 

if s_day<10 then s_day="0"&s_day 

s_hour=hour(shijian) 

if s_hour<10 then s_hour="0"&s_hour 

s_minute=minute(shijian) 

if s_minute<10 then s_minute="0"&s_minute 

s_ss=second(shijian) 

if s_ss<10 then s_ss="0"&s_ss 

chan_file = s_month & s_day & s_hour & s_minute & s_ss 

end function 

top="<html><head><title>news</title></head><body>" 

botom="</body></html>" 

msg=request.Form("msg") 

msg=replace(msg,vbcrlf,"") 

msg=replace(msg,chr(9),"") 

msg=replace(msg," "," ") 

msg=replace(msg,"\r\n","<br>") 

msg=replace(msg,"\n","<br>") 

msg=top&msg&botom 

Set fs=Server.CreateObject("Scripting.FileSystemObject") 

all_tree2=server.mappath("news")&"\"&chan_data(now) 

if (fs.FolderExists(all_tree2)) then'判断今天的文件夹是否存在 

else 

fs.CreateFolder(all_tree2) 

end if 

pass=chan_file(now) 

randomize '使用系统计时器来初始化乱数产生器 

pass=rnd(pass) 

pass=get_pass(pass) 

pass=left(pass,10) 

 

file1=pass 

files=file1&".txt" 

filez=all_tree2&"\"&files 

 

set ts = fs.createtextfile(filez,true) '写文件 

for z=1 to len(msg) 

write_now=mid(msg,z,1) 

ts.write(write_now) 

next 

' ts.writeline(all_msg) 

ts.close 

set ts=nothing '文件生成 

 

if err.number<>0 or err then%> 

<script language="javascript"> 

alert("不能完成") 

</script> 

<%else%> 

<script language="javascript"> 

alert("已完成") 

history.back(); 

</script> 

<%end if 

Set MyFile = fs.GetFile(filez) 

all_tree2=server.mappath("news")&"\"&chan_data(now) 

if (fs.FolderExists(all_tree2)) then 

else 

fs.CreateFolder(all_tree2) 

end if 

MyFile.name= left(MyFile.name,len(MyFile.name)-4)&".htm" 

set MyFile=nothing 

set fs=nothing 

set fdir=nothing 

function get_pass(pass) 

 

pass=cstr(pass) 

pass=replace(pass," ","") 

pass=replace(pass," ","") 

pass=replace(pass,"-","") 

pass=replace(pass," ","") 

pass=replace(pass,":","") 

pass=replace(pass,".","") 

pass=replace(pass,"+","") 

pass=replace(pass,"_","") 

pass=replace(pass,"<","") 

pass=replace(pass,">","") 

pass=replace(pass,"!","") 

pass=replace(pass,"@","") 

pass=replace(pass,"#","") 

pass=replace(pass,"$","") 

pass=replace(pass,"%","") 

pass=replace(pass,"^","") 

pass=replace(pass,"&","") 

pass=replace(pass,"*","") 

pass=replace(pass,"(","") 

pass=replace(pass,")","") 

pass=replace(pass,"=","") 

pass=replace(pass,"\","") 

pass=replace(pass,"/","") 

pass=replace(pass,"|","") 

get_pass=pass 

 

end function 

 

%> 

 

 

'// 

 

把send.asp和index.htm放到你的ASP目录下,然后再建一个news文件夹。打开浏览器,在地址栏里输入:http://你的机器名/你的ASP虚拟目录名/index.html输入文字,然后提交,OK!看看你的ASP目录里新建的news文件夹里是不是多了个新的文件夹,而且是以当前日期命名的。里面有你刚刚提交的文字,看看是不是生成了HTML文件。怎么样,你可以在此基础上做个简单的新闻发布系统。

相关文章