核心提示:Flash和ASP实现的用户登录/注册程序教程。

Flash一帧可以完成.asp也可以一个文件完成,这里我将用户登录和用户注册分为两步做,方便大家理解,Flash分两帧,asp分两个文件。

准备: Flash8 , IIS ,Miscrosoft Access 2003;

开始:

数据库中:

用设计视图新建一个名为 UserTable 的表,三个字段分别为 id 为自动编号,username为文本,password为文本;

输入一条数据 username 和 password 都为chooseflash;

如图:

Flash和ASP实现的用户登录/注册程序

Flash中:

新建文件命名为login.fla,舞台大小设置为250*200,背景随意;

第一帧:用户登录

新建三个图层分别命名为 bg 和 body 和as;

舞台中的实例:

一个 window 组件到舞台命名为 win;

win(背景),放到 bg 层;

设置如图:

Flash和ASP实现的用户登录/注册程序

二个按钮组件分别命名为: login 和 register;

login(登录),register(注册),放到 body 层;

设置如图:

Flash和ASP实现的用户登录/注册程序

Flash和ASP实现的用户登录/注册程序

三个 TextInput 文本输入组件分别命名为 username 和 password 和 msg;

username(用户名输入框),password(密码输入框),msg(消息框),放到 body 层;

第一帧是用户登录脚本.代码如下:

//此帧是用户登录脚本

stop();

//将window组件设置为不可用.因为是做背景

win.enabled = false;

//新建LoadVars对象,用来发送和接收数据;

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方法发送用户名和密码到login.asp中验证;再返回给loginData对象;

loginData.sendAndLoad("login.asp", loginData, "get");

}

};

//调用LoadVars对象的onLoad事件.

loginData.onLoad = function(success) {

//判断加载login.asp是否成功;

if (success) {

//这个是ASP中查询数据库中返回的值;

if (loginData.success !=0) {

msg.text = "登录成功";

//这里大家可以写自己的代码.

username.text="";

password.text="";

} else {

msg.text = "用户名和密码不正确";

}

}else{

msg.text="连接网络失败";

}

};

下面是 login.asp 中的代码:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>

<%

’声明变量

dim db,conn,div,rs,success,username,password

’获取Flash中传过来的变量

username=Request("username")

password=Request("password")

’设置一个连接对象

set conn=Server.Createobject("adodb.connection")

’数据库的相对路径

db=Server.MapPath("UserTable.mdb")

’数据库的驱动

div="Provider=Microsoft.Jet.OLEDB.4.0;"&"Data Source="&db

’打开连接

conn.Open div

’新建记录集对象

set rs=server.createobject("adodb.recordset")

’SQL查询语句,用来查询数据库中是否有数据;

sql="select * from UserTable where username=’"&username&"’ and password=’"&password&"’"

’打开查询语句

rs.open sql,conn,1,1

’如果数据库中没有数据rs.RecordCount将返回0;

success=rs.RecordCount

’将success变量发送到Flash中

Response.Write("success="&success)

’关闭记录集

rs.close

’释放记录集对象rs

set rs=nothing

’关闭打开的连接

conn.close

’释放连接对象conn

set conn=nothing

%>

到这里.用户登录就可以了.下面我们做的是用户注册;