📄 0104.htm
字号:
<html>
<head>
<title>新时代软件教程:操作系统 主页制作 服务器 设计软件 网络技术 编程语言 文字编辑</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
<!--
body, table {font-size: 9pt; font-family: 宋体}
a {text-decoration:none}
a:hover {color: red;text-decoration:underline}
.1 {background-color: rgb(245,245,245)}
-->
</style>
</head>
<p align="center"><script src="../../1.js"></script></a>
<p align="center"><big><strong>使用ASP常见问题解答</strong></big></p>
<div align="right">---(文/林子)</div>
<p><span class="text"> 问题:如何保护自己的ASP源代码不泄露? <br>
<br>
<br>
<br>
答:下载微软的Windows Script Encoder,对ASP的脚本和客户端JavaScript、VBScript脚本进行加密。客户端脚本加密后,只有IE5以上的版本才能执行,服务器端脚本加密后,只有服务器上安装有Script
Engine 5(装IE5即可)才能解释执行。 <br>
<br>
<br>
<br>
问题:为什么Global.asa文件总是不起作用? <br>
<br>
<br>
<br>
答:只有把Global.asa文件放在Web发布目录某个站点的根目录下它才有效,放在发布目录的某个子目录下不起作用。另外,也可以使用IIS4的Internet
Service Manager把某个子目录设置为站点。 <br>
<br>
<br>
<br>
问题:为什么ASP文件总不解释执行? <br>
<br>
<br>
<br>
答:在IIS服务器上没有给ASP文件以脚本解释的权限,所以ASP文件没有被Web服务器作为脚本代码进行解释执行,而被当成一般页面文件了。建议在Web发布目录中建立一个ASP目录,把所有ASP文件存放在此目录下,把ASP目录赋予脚本解释权限。
<br>
<br>
<br>
<br>
问题: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”,请问如何解决? <br>
<br>
<br>
<br>
答:此错误为HTTP
标题在写入页内容之后,写到了客户浏览器中。任何 HTTP
标题的修改必须在写入页内容之前进行,解决的方法为在ASP文件最开头加入Response.Buffer
= True,在文件的结尾加入Response.Flush。 <br>
<br>
<br>
<br>
问题:为什么Session 有时候会消失? <br>
<br>
<br>
<br>
答: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分钟。 <br>
<br>
<br>
<br>
问题:怎样才能知道访问者的一些信息? <br>
<br>
<br>
<br>
答:通过Request.ServerVariables(″HTTP—USER—AGENT″)获得访问者浏览器的类型;
Request.ServerVariables(″REMOTE—ADDR″)可获得访问者的IP地址;而访问者的语言环境可通过Request.ServerVariables(″HTTP—ACCEPT—LANGUAGE″)来获得。
<br>
<br>
<br>
<br>
问题:怎样才能将Query String从一个ASP文件传送到另一个ASP文件?
<br>
<br>
<br>
<br>
答:前一个ASP文件加入下列代码:Response.Redirect(″second.asp?″ &
Request.ServerVariables(″QUERY—STRING″))即可。 <br>
<br>
<br>
<br>
问题:ASP中如何控制Cookies? <br>
<br>
<br>
<br>
答:若想写入Cookies可用:Response.Cookies(″待写入的Coookies名称″)=待写入数据。读取Cookies则使用:读取数据=Request.Cookies(″待读的Cookies名称″)。
<br>
<br>
注意,写入Cookies的Response.Cookies程序段必须放在〈html〉标记之前,且不可以有任何的其它html代码。另外,Cookies中必须使用Expires设定有效期,Cookies才能真正地写入客户端硬盘中,否则只是临时的。
<br>
<br>
<br>
<br>
问题:怎样实现用ASP发送邮件? <br>
<br>
<br>
<br>
答:用户需装上Windows NT Option pack的SMTP Service功能。实现代码如下:〈%
<br>
<br>
Set mail = Server.CreateObject(″CDONTS.NewMail″) <br>
<br>
mail.TO = ″abc@xxx.com″ <br>
<br>
mail.From = ″yourmail@xxx.com″ <br>
<br>
mail.Subject = ″主题″ <br>
<br>
mail.Body = ″E-Mail内容″ <br>
<br>
mail.Send <br>
<br>
%〉 <br>
<br>
<br>
<br>
问题:ASP与数据库连接一定要在服务器端设置DSN吗? <br>
<br>
<br>
<br>
答:不一定, ASP与服务器的数据库连接有两种方法,一种为通过DSN建立连接,另一种不用DSN建立连接。通过DSN连接数据库需要服务器的系统管理员在服务器的控制面板中的ODBC中设置一个DSN。如果没有在服务器上设置DSN,只要知道数据库文件名(比如Access、Paradox、FoxPro的数据库)或者数据源名(如SQLserver的数据库)就可以访问数据库,直接提供连接所需的参数即可。
<br>
<br>
连接代码如下: <br>
<br>
set conn=server.createobject(″adodb.connection″) <br>
<br>
connpath=″DBQ=″ & server.mappath(″yourtable.mdb″) <br>
<br>
conn.Open ″DRIVER={Microsoft Access Driver (
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -