ASP類(lèi)Class入門(mén) 推薦

class 聲明

聲明一個(gè)類(lèi)的名字,就是定義一些變量,屬性,方法來(lái)組成一個(gè)類(lèi)。我們常常看到別的程序語(yǔ)言中中都有類(lèi)的說(shuō)明,php,vb,c++,這個(gè)在vbscript中的類(lèi)的說(shuō)明,我是第一次聽(tīng)到,我們的日常工作就是網(wǎng)站開(kāi)發(fā),在這個(gè)里面多多少少搞出點(diǎn)經(jīng)驗(yàn),像模像樣也能自詡為"內(nèi)行",所以我就來(lái)分享一下我所知道的這個(gè)新的東東。我們來(lái)看看下面的這個(gè)代碼吧!(window2000+iis5.0通過(guò)測(cè)試)

類(lèi)的定義1

yyh.asp

<%
''聲明一個(gè)名為yh的類(lèi) 
class yh

private yh

''類(lèi)的初始化
private sub class_initialize
yh="天涯風(fēng)云"
end sub 

''定義一個(gè)函數(shù)
public function yyh(a,b)
yyh=a+b
end function

''定義一個(gè)方法
public sub yyh1(stat)
response.write stat
end sub 

end class

set myyyh=new yh ''定義一個(gè)名為yh的myyyh對(duì)象實(shí)例
response.write myyyh.yyh(6,6)&"
"
mystring="這是天涯風(fēng)云方法"
myyyh.yyh1 mystring

%>

這是很簡(jiǎn)單的一個(gè)程序,我們?cè)谄渲新暶髁艘粋€(gè)名為yh的類(lèi),建立了一個(gè)yyh函數(shù),一個(gè)yyh1方法,這個(gè)程序很簡(jiǎn)單相信大家能看懂,它的顯示如下:

12
這是天涯風(fēng)云的方法

可以把我們常用到的程序?qū)懗梢粋€(gè)類(lèi),到時(shí)候就用<!--#include file="yyh.asp"-->來(lái)包含進(jìn)來(lái)就行了,這給我們開(kāi)發(fā)程序又提供了新的空間.

類(lèi)的定義2

這里采用類(lèi)的屬性定義方法。

<%
''聲明一個(gè)名為myclass的類(lèi) 
class myclass

private a1,b1

''類(lèi)的初始化
private sub class_initialize
a1=0
b1=0
end sub 

''定義一個(gè)屬性
public property let width(ax)
a1=ax
end property

''定義另個(gè)一個(gè)屬性
public property let height(bx)
b1=bx
end property

''計(jì)算兩個(gè)屬性值的結(jié)果,得到一個(gè)新的屬性
public property get area
area=b1*a1
end property

end class

set tianya=new myclass ''定義一個(gè)名為tianya的對(duì)象myclass的實(shí)例
tianya.width=50
tianya.height=60
response.write tianya.area
%>

一個(gè)完全數(shù)據(jù)庫(kù)管理的asp類(lèi)模型

'天涯風(fēng)云原創(chuàng)

先建一個(gè)數(shù)據(jù)庫(kù)user,有一個(gè)表名為user,
表里有三個(gè)字段,分別為id,name,content

先寫(xiě)數(shù)據(jù)庫(kù)連接文件:
'conn.asp

<%
strsql="dbq="+server.mappath("user.mdb")+";driver={microsoft access driver (*.mdb)};"
set conn=server.createobject("adodb.connection")
conn.open strsql
%>

構(gòu)造userclass類(lèi):

,mycls.asp

<%
class userclass
private id,name,content

private sub class_initialize()   '類(lèi)的初始化,連接數(shù)據(jù)庫(kù)
username=""
usercontent=""
end sub

'以下設(shè)置類(lèi)的幾個(gè)屬性
public property let userid(vnewvalue)
id=cint(vnewvalue)
end property

public property get userid
userid=id
end property


public property let username(vnewvalue)
name=vnewvalue
end property

public property get username
username=name
end property

public property let usercontent(vnewvalue)
content=vnewvalue
end property

public property get usercontent
usercontent=content
end property

'添加記錄
public sub adduser()
if username <> "" and usercontent <> "" then
set rs = server.createobject("adodb.recordset")
sql="select * from user"
rs.open sql,conn,1,3
rs.addnew
rs("name") = username
rs("content") = usercontent
rs.update
rs.close
set rs = nothing
response.write "添加記錄成功!"
end if
end sub


'顯示一條記錄
public sub showuser()
set rs=server.createobject("adodb.recordset")
sql="select * from user where id=" & userid
rs.open sql,conn,1,3
username=rs("name")
usercontent=rs("content")
rs.close
end sub

'編輯記錄
public sub edit()
set rs=server.createobject("adodb.recordset")
sql="select * from user where id=" & userid
rs.open sql,conn,1,1
username=rs("name")
usercontent=rs("content")
rs.close
end sub

'保存編輯
public sub saveedit()
set rs=server.createobject("adodb.recordset")
sql="select * from user where id =" & userid
rs.open sql,conn,1,3
rs("name")=username
rs("content")=usercontent
rs.update
rs.close
response.write "更新記錄成功!"
end sub

'刪除記錄
public sub deluser()
set rs=server.createobject("adodb.recordset")
sql="delete from user where id="& userid
rs.open sql,conn,1,1
set rs=nothing
response.write "刪除記錄成功!"
end sub

'挑戰(zhàn)分頁(yè)顯示~~?。?
public sub list(n)
dim page 
page=request("page") 
pagesize = n
dim rs,strsql,news 
strsql ="select * from user order by id desc" 

set rs = server.createobject("adodb.recordset") 
rs.open strsql,conn,3,3 
rs.pagesize = pagesize 
totalfilm=rs.recordcount 
pgnum=rs.pagecount 
if page="" or clng(page)<1 then page=1 
if clng(page) > pgnum then page=pgnum 
if pgnum>0 then rs.absolutepage=page 

if rs.eof then 
response.write "沒(méi)有記錄!" 
else 
count=0
do while not (rs.eof or rs.bof) and count <rs.pagesize with="" response="" .write="" " "
.write rs("id")&" "
.write ""
.write rs("name")
.write " "
.write "內(nèi)容: "&rs("content")
.write ""
end with
rs.movenext
count=count+1
loop
end if
with response
.write "
" .write rs.pagecount .write "頁(yè)" for i=1 to rs.pagecount .write " " .write i .write "" next rs.close set rs=nothing .write "
" end with end sub '類(lèi)退出后,作清理工作 private sub class_terminate() if isobject(conn) then conn.close:set conn = nothing end sub end class %>

(以上程序在winxpsp2+netbox通過(guò))

相關(guān)文章
亚洲国产精品第一区二区,久久免费视频77,99V久久综合狠狠综合久久,国产免费久久九九免费视频