ASP常用代码大全
在ASP(Active Server Pages)开发中,掌握常用代码是提高开发效率的关键,本文将整理ASP开发中常用的代码片段,涵盖数据库操作、表单处理、文件操作、会话管理等方面,并附上示例和说明,帮助开发者快速上手。

数据库操作
ASP常与Access、SQL Server等数据库结合使用,以下是常见的数据库操作代码。
连接Access数据库
<%
Dim conn, connStr
Set conn = Server.CreateObject("ADODB.Connection")
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("database.mdb")
conn.Open connStr
%> 连接SQL Server数据库
<%
Dim conn, connStr
Set conn = Server.CreateObject("ADODB.Connection")
connStr = "Provider=SQLOLEDB;Data Source=服务器名;Initial Catalog=数据库名;User ID=用户名;Password=密码"
conn.Open connStr
%> 执行SQL查询并显示结果
<%
Dim rs, sql
sql = "SELECT * FROM users"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, conn, 1, 1
Do While Not rs.EOF
Response.Write "用户名:" & rs("username") & "<br>"
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
%> 插入数据
<%
Dim sql
sql = "INSERT INTO users (username, password) VALUES ('" & Request.Form("username") & "', '" & Request.Form("password") & "')"
conn.Execute sql
Response.Write "数据插入成功!"
%> 表单处理
表单是Web交互的重要部分,以下是ASP处理表单数据的常用代码。
获取表单提交的数据
<%
Dim username, password
username = Request.Form("username")
password = Request.Form("password")
Response.Write "用户名:" & username & "<br>"
Response.Write "密码:" & password
%> 表单验证
<%
Dim username, password
username = Request.Form("username")
password = Request.Form("password")
If username = "" Or password = "" Then
Response.Write "用户名和密码不能为空!"
Else
Response.Write "登录成功!"
End If
%> 文件操作
ASP支持对服务器文件的读写操作,以下是常见代码。
读取文本文件内容
<%
Dim fso, file, content
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile(Server.MapPath("test.txt"), 1)
content = file.ReadAll
file.Close
Response.Write content
%> 写入文本文件
<%
Dim fso, file
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set file = fso.CreateTextFile(Server.MapPath("test.txt"), True)
file.WriteLine "这是测试内容"
file.Close
Response.Write "文件写入成功!"
%> 会话管理
ASP通过Session对象管理用户会话,以下是常用代码。

设置Session值
<%
Session("username") = "张三"
Session("loginTime") = Now()
%> 获取Session值
<%
If Session("username") <> "" Then
Response.Write "欢迎," & Session("username") & "!"
Else
Response.Write "请先登录!"
End If
%> 销毁Session
<% Session.Abandon() Response.Write "已退出登录!" %>
常用函数
以下是ASP开发中常用的函数。
字符串处理
<% Dim str, newStr str = " Hello World " newStr = Trim(str) '去除首尾空格 Response.Write newStr & "<br>" newStr = Left(str, 5) '取左边5个字符 Response.Write newStr & "<br>" newStr = Right(str, 5) '取右边5个字符 Response.Write newStr %>
日期时间处理
<% Dim nowTime, formattedTime nowTime = Now() formattedTime = Year(nowTime) & "-" & Month(nowTime) & "-" & Day(nowTime) Response.Write "当前日期:" & formattedTime %>
错误处理
ASP通过On Error Resume Next捕获错误,以下是示例。
<%
On Error Resume Next
Dim conn
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "invalid_connection" '错误的连接字符串
If Err.Number <> 0 Then
Response.Write "错误:" & Err.Description
Else
Response.Write "连接成功!"
End If
%> 常用代码速查表
| 功能 | 代码示例 |
|---|---|
| 连接Access | Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & Server.MapPath(“db.mdb”) |
| 执行SQL查询 | rs.Open "SELECT * FROM table", conn, 1, 1 |
| 写入文件 | fso.CreateTextFile(Server.MapPath("file.txt"), True).WriteLine "内容" |
| 设置Session | Session("key") = "value" |
| 错误处理 | On Error Resume Next |
FAQs
Q1: 如何防止SQL注入攻击?
A1: 使用参数化查询或对用户输入进行过滤。
Dim cmd, param
Set cmd = Server.CreateObject("ADODB.Command")
cmd.ActiveConnection = conn
cmd.CommandText = "SELECT * FROM users WHERE username = ?"
Set param = cmd.CreateParameter("username", 200, 1, 50, Request.Form("username"))
cmd.Parameters.Append param
Set rs = cmd.Execute Q2: 如何实现文件上传功能?
A2: 使用ASPUpload等组件,示例代码:

Dim upload, file
Set upload = Server.CreateObject("Persits.Upload")
upload.Save Server.MapPath("uploads")
For Each file In upload.Files
file.SaveAs Server.MapPath("uploads") & file.FileName
Next
Response.Write "文件上传成功!" 通过以上代码和示例,开发者可以快速掌握ASP常用功能,提高开发效率。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复