分享
 
 
 

使用ASP常见问题解答

王朝厨房·作者佚名  2007-01-04
窄屏简体版  字體: |||超大  

(作者:林子2000年06月07日 14:12)

问题:如何保护自己的ASP源代码不泄露?

答:下载微软的Windows Script Encoder,对ASP的脚本和客户端JavaScript、VBScript脚本进行加密。客户端脚本加密后,只有IE5以上的版本才能执行,服务器端脚本加密后,只有服务器上安装有Script Engine 5(装IE5即可)才能解释执行。

问题:为什么Global.asa文件总是不起作用?

答:只有把Global.asa文件放在Web发布目录某个站点的根目录下它才有效,放在发布目录的某个子目录下不起作用。另外,也可以使用IIS4的Internet Service Manager把某个子目录设置为站点。

问题:为什么ASP文件总不解释执行?

答:在IIS服务器上没有给ASP文件以脚本解释的权限,所以ASP文件没有被Web服务器作为脚本代码进行解释执行,而被当成一般页面文件了。建议在Web发布目录中建立一个ASP目录,把所有ASP文件存放在此目录下,把ASP目录赋予脚本解释权限。

问题:ASP文件中使用Response.Redirect(url) 时导致错误“ The HTTP headers are already written to the client browser. Any HTTP header modifications must be made before writing page content”,请问如何解决?

答:此错误为HTTP 标题在写入页内容之后,写到了客户浏览器中。任何 HTTP 标题的修改必须在写入页内容之前进行,解决的方法为在ASP文件最开头加入Response.Buffer = True,在文件的结尾加入Response.Flush。

问题:为什么Session 有时候会消失?

答:Session很像临时的Cookie,只是其信息保存在服务器上(客户机上保存的是SessionID)。Session变量消失有几种可能,如:使用者的浏览器不接受Cookie,因为Session依赖于Cookie才能跟踪用户;Session在一段时间后过期了,缺省为20分钟,如果希望更改,可以通过设置Microsoft Management Console的Web Directory→Properties→Virtual Directory→Application Settings→Configuration→App Options→Session Timeout选项来改变Session的超时时间,也可以在ASP脚本中设定, 如Session.Timeout=60,可设定超时时间为60分钟。

问题:怎样才能知道访问者的一些信息?

答:通过Request.ServerVariables(″HTTP—USER—AGENT″)获得访问者浏览器的类型; Request.ServerVariables(″REMOTE—ADDR″)可获得访问者的IP地址;而访问者的语言环境可通过Request.ServerVariables(″HTTP—ACCEPT—LANGUAGE″)来获得。

问题:怎样才能将Query String从一个ASP文件传送到另一个ASP文件?

答:前一个ASP文件加入下列代码:Response.Redirect(″second.asp?″ & Request.ServerVariables(″QUERY—STRING″))即可。

问题:ASP中如何控制Cookies?

答:若想写入Cookies可用:Response.Cookies(″待写入的Coookies名称″)=待写入数据。读取Cookies则使用:读取数据=Request.Cookies(″待读的Cookies名称″)。

注意,写入Cookies的Response.Cookies程序段必须放在〈html〉标记之前,且不可以有任何的其它html代码。另外,Cookies中必须使用Expires设定有效期,Cookies才能真正地写入客户端硬盘中,否则只是临时的。

问题:怎样实现用ASP发送邮件?

答:用户需装上Windows NT Option pack的SMTP Service功能。实现代码如下:〈%

Set mail = Server.CreateObject(″CDONTS.NewMail″)

mail.TO = ″abc@xxx.com″

mail.From = ″yourmail@xxx.com″

mail.Subject = ″主题″

mail.Body = ″E-Mail内容″

mail.Send

%〉

问题:ASP与数据库连接一定要在服务器端设置DSN吗?

答:不一定, ASP与服务器的数据库连接有两种方法,一种为通过DSN建立连接,另一种不用DSN建立连接。通过DSN连接数据库需要服务器的系统管理员在服务器的控制面板中的ODBC中设置一个DSN。如果没有在服务器上设置DSN,只要知道数据库文件名(比如Access、Paradox、FoxPro的数据库)或者数据源名(如SQLserver的数据库)就可以访问数据库,直接提供连接所需的参数即可。

连接代码如下:

set conn=server.createobject(″adodb.connection″)

connpath=″DBQ=″ & server.mappath(″yourtable.mdb″)

conn.Open ″DRIVER={Microsoft Access Driver (.mdb)}; ″ & connpath

set rs=conn.execute(″select  from authors″)

问题:如何从一页到另一页传递变量?

答:用Hidden表单类型来传递变量。

〈 form method=″post″ action=″mynextpage.asp″〉

〈% for each item in request.form %〉

〈input namee=″〈%=item%〉″ type=″Hidden″

value=″〈%=server.HTMLEncode(Request.form(item)) %〉″〉

〈% next %〉

〈/form〉

用Session来保存变量。

〈%Session(″bh″)= request.form (″bh″)%〉

用QueryString保存变量。

〈a herf=″action.asp?bh=10″〉查询〈/a〉

〈%Request. QueryString (″bh″)%〉

问题:如何用ASP实现在线人数统计?

答:在线人数是指一个时段内的访客人数统计,时间的长短是由设计者设定的。

在这个时段内,各个不同IP访问本站点的总数,就是当前的线上人数。在ASP中,使用Session对象来实现统计,实现代码如下:

Golobal.asa文件

〈SCRIPT LANGUAGE=″VBScript″ RUNAT=″Server″〉

Sub Session—OnStart

application(″online″)=application(″online″)+1

End Sub

Sub Session—OnEnd

application(″online″)=application(″online″)-1

End Sub

sub Application—OnStard

application(″online″)=0

End Sub

sub Application—OnEnd

application(″online″)=0

End Sub

〈/SCRIPT〉

Online.asp 文件内容

〈% tmp=application(″online″)

tmp=Cstr(tmp)

dim disp(20)

dim images(20)

dbbits=len(tmp)

for i= 1 to dbbits

disp(i)=left(right(tmp,i),i-(i-1))

next

for i=dbbits to 1 step -1

images(i)=″〈img src=″&″http://xxxx.com.cn/pic″&″/″&disp(i)&″.gif〉″

response.write ″document.write(′″&images(i)&″ ′);″

next %〉

问题:ASP程序运行的时间如何计算?

答:确定ASP程序的执行时间的代码如下所示:

〈%

dim t1,t2

t1=now()

′被检测的ASP代码

t2=now()

response.write ″运行这段ASP代码用了″&cstr(cdbl((t2-t1)*24*60*60)) & ″秒″

%〉

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有