Flash一幀可以完成.asp也可以一個文件完成,這里我將用戶登錄和用戶注冊分為兩步做,方便大家理解,Flash分兩幀,asp分兩個文件。
準備: Flash8 , IIS ,Miscrosoft Access 2003;
開始:
數(shù)據(jù)庫中:
用設(shè)計視圖新建一個名為 UserTable 的表,三個字段分別為 id 為自動編號,username為文本,password為文本;
輸入一條數(shù)據(jù) username 和 password 都為chooseflash;
如圖:
Flash中:
新建文件命名為login.fla,舞臺大小設(shè)置為250*200,背景隨意;
第一幀:用戶登錄
新建三個圖層分別命名為 bg 和 body 和as;
舞臺中的實例:
一個 window 組件到舞臺命名為 win;
win(背景),放到 bg 層;
設(shè)置如圖:
二個按鈕組件分別命名為: login 和 register;
login(登錄),register(注冊),放到 body 層;
設(shè)置如圖:
三個 TextInput 文本輸入組件分別命名為 username 和 password 和 msg;
username(用戶名輸入框),password(密碼輸入框),msg(消息框),放到 body 層;
第一幀是用戶登錄腳本.代碼如下:
//此幀是用戶登錄腳本
stop();
//將window組件設(shè)置為不可用.因為是做背景
win.enabled = false;
//新建LoadVars對象,用來發(fā)送和接收數(shù)據(jù);
var loginData:LoadVars = new LoadVars();
//注冊按鈕
register.onRelease=function(){
win.title="(教程Flash與ASP)用戶注冊";
msg.text="";
gotoAndStop(2);
}
//登錄按鈕.
login.onRelease = function() {
//判斷用戶名和密碼是不是為空.
if ((username.text == "") || (password.text == "")) {
msg.text = "請正確輸入用戶名或密碼!";
//判斷用戶名和密碼是否小于8位.
} else if((username.length<8)||(password.length<8)){
msg.text = "用戶名和密碼不能小于8位!";
} else {
msg.text = "驗證中...";
//將用戶名文體框的值付給loginData對象的username變量;
loginData.username = username.text;
//將用戶密碼文體框的值付給loginData對象的password變量;
loginData.password = password.text;
//使用get方法發(fā)送用戶名和密碼到login.asp中驗證;再返回給loginData對象;
loginData.sendAndLoad("login.asp", loginData, "get");
}
};
//調(diào)用LoadVars對象的onLoad事件.
loginData.onLoad = function(success) {
//判斷加載login.asp是否成功;
if (success) {
//這個是ASP中查詢數(shù)據(jù)庫中返回的值;
if (loginData.success !=0) {
msg.text = "登錄成功";
//這里大家可以寫自己的代碼.
username.text="";
password.text="";
} else {
msg.text = "用戶名和密碼不正確";
}
}else{
msg.text="連接網(wǎng)絡(luò)失敗";
}
};
下面是 login.asp 中的代碼:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
’聲明變量
dim db,conn,div,rs,success,username,password
’獲取Flash中傳過來的變量
username=Request("username")
password=Request("password")
’設(shè)置一個連接對象
set conn=Server.Createobject("adodb.connection")
’數(shù)據(jù)庫的相對路徑
db=Server.MapPath("UserTable.mdb")
’數(shù)據(jù)庫的驅(qū)動
div="Provider=Microsoft.Jet.OLEDB.4.0;"&"Data Source="&db
’打開連接
conn.Open div
’新建記錄集對象
set rs=server.createobject("adodb.recordset")
’SQL查詢語句,用來查詢數(shù)據(jù)庫中是否有數(shù)據(jù);
sql="select * from UserTable where username=’"&username&"’ and password=’"&password&"’"
’打開查詢語句
rs.open sql,conn,1,1
’如果數(shù)據(jù)庫中沒有數(shù)據(jù)rs.RecordCount將返回0;
success=rs.RecordCount
’將success變量發(fā)送到Flash中
Response.Write("success="&success)
’關(guān)閉記錄集
rs.close
’釋放記錄集對象rs
set rs=nothing
’關(guān)閉打開的連接
conn.close
’釋放連接對象conn
set conn=nothing
%>
到這里.用戶登錄就可以了.下面我們做的是用戶注冊;
2015年全國職稱計算機考試教材(2007模 .. 定價:¥225 優(yōu)惠價:¥213 更多書籍 | |
全國職稱計算機考試速成過關(guān)系列套裝:W .. 定價:¥133 優(yōu)惠價:¥133.0 更多書籍 |