我总结的一些小应用,高手就不要看了

littleyy 2002-11-19 08:58:10
--------------------------------------------------------------------------------
让IE后退时不取出Cache里的内容


有朋友问我如何在ASP中实现让IE后退时不取出Cache里的内容,现在我告诉大家只要把下面的语句Copy到ASP的<head>...</head>就可以了:
<%
Response.Buffer=true
Response.Expires=0
Response.CacheControl="no-cache"
%>  
下面的等同
<html>
<head>
<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">
</head>
  
--------------------------------------------------------------------------------

数据库查询中的特殊字符的问题

在进行数据库的查询时,会经常遇到这样的情况:
  例如想在一个用户数据库中查询他的用户名和他的密码,但恰好该用户使用的名字和密码中有特殊的字符,例如单引号,“|”号,双引号或者连字符“&”。
  例如他的名字是1"test,密码是A|&900
  这时当你执行以下的查询语句时,肯定会报错:
SQL = "SELECT * FROM SecurityLevel WHERE UID="" & UserID & """
SQL = SQL & " AND PWD="" & Password & """
  因为你的SQL将会是这样:
SELECT * FROM SecurityLevel WHERE UID="1"test" AND PWD="A|&900"
  在SQL中,"|"为分割字段用的,显然会出错了。现在提供下面的几个函数 专门用来处理这些头疼的东西:
Function ReplaceStr (TextIn, ByVal SearchStr As String, _
ByVal Replacement As String, _
ByVal CompMode As Integer)



 Dim WorkText As String, Pointer As Integer
 If IsNull(TextIn) Then
  ReplaceStr = Null
 Else
  WorkText = TextIn
  Pointer = InStr(1, WorkText, SearchStr, CompMode)
  Do While Pointer > 0
   WorkText = Left(WorkText, Pointer - 1) & Replacement & _
   Mid(WorkText, Pointer + Len(SearchStr))
   Pointer = InStr(Pointer + Len(Replacement), WorkText, SearchStr, CompMode)
  Loop
  ReplaceStr = WorkText
 End If
End Function



Function SQLFixup(TextIn)
 SQLFixup = ReplaceStr(TextIn, """, """", 0)
End Function
Function JetSQLFixup(TextIn)
 Dim Temp
 Temp = ReplaceStr(TextIn, """, """", 0)
 JetSQLFixup = ReplaceStr(Temp, "|", "" & chr(124) & "", 0)
End Function



Function FindFirstFixup(TextIn)
 Dim Temp
 Temp = ReplaceStr(TextIn, """, "" & chr(39) & "", 0)
 FindFirstFixup = ReplaceStr(Temp, "|", "" & chr(124) & "", 0)
End Function
  有了上面几个函数后,当你在执行一个sql前,请先使用
SQL = "SELECT * FROM SecurityLevel WHERE UID="" & SQLFixup(UserID) & """
SQL = SQL & " AND PWD="" & SQLFixup(Password) & """
--------------------------------------------------------------------------------
发送Email
<%
Dim objCDO
Set objCDO = Server.CreateObject("CDONTS.NewMail")

objCDO.To = "yourname@yourweb.com"
objCDO.From = "yourname@yourweb.com"
objCDO.cc = "yourname@yourweb.com"

Dim txtSubject
txtSubject = "Hello Scott! We were wanting your advice on some programming issues. Please come to Redmond at your earliest convenience for a very fat check!"

objCDO.Subject = "Attn: Scott, we need you!!"
objCDO.Body = txtSubject
objCDO.Send
response.write("ok!")
%>
--------------------------------------------------------------------------------
显示数据库中的字段名称
for each whatever in rs.fields
response.write "<td><b>" & whatever.name & "</B></TD>"
next
--------------------------------------------------------------------------------
GetString的使用方法
strTable = rs.GetString(,,"</td><td>","</td></tr><tr><td>"," ")
<%Response.Write(strTable)%>
--------------------------------------------------------------------------------
防止表单多次被提交
<% Randomize '初始代随机数种子 num1=rnd() '产生随机数num1
num1=int(26*num1)+65 '修改num1的范围以使其是A-Z范围的Ascii码,以防表单名出错
session("antry")="test"&chr(num1) '产生随机字符串 %>
<form name="test" action="testact.asp" method="post">
你的名字:<input type='text' name='' size=30> '注意本行中使用了随机表单项名
<input type='submit' value='提交'> </form> 表单处理程序testact.asp <%
teststr=request.form(session("antry")) if teststr="" then
response.write "没有填写姓名或重复提交"
'由于用户没有填写名字,或表单被重复提交(标志为session("antry")为空)引起 else
response.write teststr
session("antry")="" '提交成功,清空session("antry"),以防重复提交!! end if %>
--------------------------------------------------------------------------------
session时间设置
Session.TimeOut=5
session.Contents("test")="test"

也可以在IIS中设置:

属性-->主目录-->配置-->应用程序选项-->会话超时

默认下为20分钟,可以改为你所需要的

--------------------------------------------------------------------------------
...全文
24 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
oldsky 2002-11-19
  • 打赏
  • 举报
回复
防止表单多次被提交的其他办法:
如果你用button提交,可以这样写:
function chksubmit()
{
... // 检查表单数据合法性
if (表单数据合法)
{ button.disabled=true}
else
{ 报错;
return false;}

}
spear_nj 2002-11-19
  • 打赏
  • 举报
回复
不错哦
LoneHome 2002-11-19
  • 打赏
  • 举报
回复
收!:)

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧