1小時ASP入門,很是簡單。 html
<%
語句
……
%>
<2>定義變量dim語句
<%
dim a,b
a=10
b=」ok!」
%>
注意:定義的變梁蒙以是數值型,也能夠是字符或者其餘類型的
<3>簡單的控制流程語句
1. If 條件1 then
語句1
elseif 條件2 then
語句2
else
語句3
endif
2.while 條件
語句
wend
3.for count=1 to n step m
語句1
exit for
語句2
next
二.ASP數據庫簡單*做教程
<1>.數據庫鏈接(用來單獨編制鏈接文件conn.asp)
<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\bbs\db1\user.mdb")
%> sql
2014.12.22測試 (win7 32位+IIS) 鏈接代碼出錯 數據庫
正確的代碼爲: 數組
<% Set conn = Server.CreateObject("ADODB.Connection") conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("bbs/db1/user.mdb") %>
注意,這裏要用 /,不然報錯。 瀏覽器
(用來鏈接bbs\db1\目錄下的user.mdb數據庫)
<2>顯示數據庫記錄
原理:將數據庫中的記錄一一顯示到客戶端瀏覽器,依次讀出數據庫中的每一條記錄
若是是從頭至尾:用循環並判斷指針是否到末 使用: not rs.eof
若是是從尾到頭:用循環並判斷指針是否到開始 使用:not rs.bof
<!--#include file=conn.asp--> (包含conn.asp用來打開bbs\db1\目錄下的user.mdb數據庫)
<%
set rs=server.CreateObject("adodb.recordset") (創建recordset對象)
sqlstr="select * from message" ---->(message爲數據庫中的一個數據表,即你要顯示的數據所存放的數據表)
rs.open sqlstr,conn,1,3 ---->(表示打開數據庫的方式)
rs.movefirst ---->(將指針移到第一條記錄)
while not rs.eof ---->(判斷指針是否到末尾)
response.write(rs("name")) ---->(顯示數據表message中的name字段)
rs.movenext ---->(將指針移動到下一條記錄)
wend ---->(循環結束)
------------------------------------------------------
rs.close
conn.close 這幾句是用來關閉數據庫
set rs=nothing
set conn=nothing
-------------------------------------------------------
%> 服務器
完整的代碼爲 cookie
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name="Description" content=""> <title>Document</title> </head> <body> <!--#include file=conn.asp--> <% set rs=server.CreateObject("adodb.recordset") ' (創建recordset對象) sqlstr="select * from message" ' ---->(message爲數據庫中的一個數據表,即你要顯示的數據所存放的數據表) rs.open sqlstr,conn,1,3 ' ---->(表示打開數據庫的方式) rs.movefirst ' ---->(將指針移到第一條記錄) while not rs.eof ' ---->(判斷指針是否到末尾) response.write(rs("name")&"<br/>") ' ---->(顯示數據表message中的name字段) response.write(rs("depr")&"<br/>") response.write(rs("tel")&"<br/>") response.write(rs("add")&"<br/>") rs.movenext ' ---->(將指針移動到下一條記錄) wend ' ---->(循環結束) '------------------------------------------------------ rs.close conn.close '這幾句是用來關閉數據庫 set rs=nothing set conn=nothing '------------------------------------------------------- %> </body> </html>
其中response對象是服務器向客戶端瀏覽器發送的信息
<3>增長數據庫記錄
增長數據庫記錄用到rs.addnew,rs.update兩個函數
<!--#include file=conn.asp--> (包含conn.asp用來打開bbs\db1\目錄下的user.mdb數據庫)
<%
set rs=server.CreateObject("adodb.recordset") (創建recordset對象)
sqlstr="select * from message" ---->(message爲數據庫中的一個數據表,即你要顯示的數據所存放的數據表)
rs.open sqlstr,conn,1,3 ---->(表示打開數據庫的方式)
rs.addnew 新增長一條記錄
rs("name")="xx" 將xx的值傳給name字段
rs.update 刷新數據庫
------------------------------------------------------
rs.close
conn.close 這幾句是用來關閉數據庫
set rs=nothing
set conn=nothing
-------------------------------------------------------
%>
<4>刪除一條記錄
刪除數據庫記錄主要用到rs.delete,rs.update
<!--#include file=conn.asp--> (包含conn.asp用來打開bbs\db1\目錄下的user.mdb數據庫)
<%
dim name
name="xx"
set rs=server.CreateObject("adodb.recordset") (創建recordset對象)
sqlstr="select * from message" ---->(message爲數據庫中的一個數據表,即你要顯示的數據所存放的數據表)
rs.open sqlstr,conn,1,3 ---->(表示打開數據庫的方式)
-------------------------------------------------------
while not rs.eof
if rs.("name")=name then
rs.delete
rs.update 查詢數據表中的name字段的值是否等於變量name的值"xx",若是符合就執行刪除,
else 不然繼續查詢,直到指針到末尾爲止
rs.movenext
emd if
wend
------------------------------------------------------
------------------------------------------------------
rs.close
conn.close 這幾句是用來關閉數據庫
set rs=nothing
set conn=nothing
-------------------------------------------------------
%>
<5>關於數據庫的查詢
(a) 查詢字段爲字符型
<%
dim user,pass,qq,mail,message
user=request.Form("user")
pass=request.Form("pass")
qq=request.Form("qq")
mail=request.Form("mail")
message=request.Form("message")
if trim(user)&"x"="x" or trim(pass)&"x"="x" then (檢測user值和pass值是否爲空,能夠檢測到空格)
response.write("註冊信息不能爲空")
else
set rs=server.CreateObject("adodb.recordset")
sqlstr="select * from user where user='"&user&"'" (查詢user數據表中的user字段其中user字段爲字符型)
rs.open sqlstr,conn,1,3
if rs.eof then
rs.addnew
rs("user")=user
rs("pass")=pass
rs("qq")=qq
rs("mail")=mail
rs("message")=message
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write("註冊成功")
end if
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write("註冊重名")
%>
(b)查詢字段爲數字型
<%
dim num
num=request.Form("num")
set rs=server.CreateObject("adodb.recordset")
sqlstr="select * from message where id="&num (查詢message數據表中id字段的值是否與num相等,其中id爲數字型)
rs.open sqlstr,conn,1,3
if not rs.eof then
rs.delete
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write("刪除成功")
end if
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write("刪除失敗")
%>
<6>幾個簡單的asp對象的講解
response對象:服務器端向客戶端發送的信息對象,包括直接發送信息給瀏覽器,從新定向URL,或設置cookie值
request對象:客戶端向服務器提出的請求
session對象:做爲一個全局變量,在整個站點都生效
server對象:提供對服務器上方法和屬性的訪問
(a) response對象的通常使用方法
好比:
<%
resposne.write("hello, welcome to asp!")
%>
在客戶端瀏覽器就會看到 hello, welcome to asp! 這一段文字
<%
response.Redirect("www.sohu.com")
%>
若是執行這一段,則瀏覽器就會自動鏈接到 「搜狐」 的網址
關於response對象的用法還有不少,你們能夠研究研究
request對象的通常使用方法
好比客戶端向服務器提出的請求就是經過request對象來傳遞的
列如 :你在申請郵箱的所填寫的我的信息就是經過該對象來將
你所填寫的信息傳遞給服務器的
好比:這是一段表單的代碼,這是提供給客戶填寫信息的,填寫完了按
「提交」傳遞給request.asp文件處理後再存入服務器數據庫
<form name="form1" method="post" action="request.asp">
<p>
<input type="text" name="user">
</p>
<p>
<input type="text" name="pass">
</p>
<p>
<input type="submit" name="Submit" value="提交">
</p>
</form>
那麼request.asp該如何將其中的信息讀入,在寫入數據庫,在這裏就要用到
request對象了,下面咱們就來分析request.asp的寫法
<%
dim name,password (定義user和password兩個變量)
name=request.form(「user」) (將表單中的user信息傳給變量name)
password=request.form(「pass」) (將表單中的pass信息傳給變量password)
%>
經過以上的幾句代碼咱們就將表單中的數據讀進來了,接下來咱們要作的就是將
信息寫入數據庫了,寫入數據庫的方法上面都介紹了,這裏就不一一複述了。 session
20110519
當名稱相同時,提交後獲取該表單名可直接獲取到一個數組,用「,」分隔
如:
<input name=checkbox type=checkbox value="1">
<input name=checkbox type=checkbox value="2"> 函數
複選以上兩項,在提交後
request.form("checkbox")
的值爲"1,2" post
注意,多選時,必須名稱相同纔可得到數組,而且只獲取已選中的值,沒法獲取未選中的值。
'''''''''''''''''''''''''''''''''''''''''''' 如何用ASP判斷用戶提交的Checkbox的個數? Request.Form("del_id").Count