您所在的位置:首页 > 资讯教程 > 软件教程 > 媒体工具 > Flash和ASP实现的用户登录程序

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

2016-04-08 17:24:21  来源:互联网  次阅读

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

准备: Flash8 , IIS ,Miscrosoft Access 2003;

开始:

数据库中:

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

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

Flash中:

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

第一帧:用户登录

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

舞台中的实例:

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

win(背景),放到 bg 层;

设置如图:

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

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

设置如图:

三个 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,p,rs,success,username,password

’获取Flash中传过来的变量

username=Request("username")

password=Request("password")

’设置一个连接对象

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

’数据库的相对路径

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

’数据库的驱动

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

’打开连接

conn.Open p

’新建记录集对象

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

%>

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



第二帧: 用户注册

在 body 层 按F6插入关键帧.分别修改舞台中的两个按钮的实例名为,fanghui 和 tijiao;

fanghui(返回),tijiao(提交);

然后在第二帧输入代码:

//此帧是用户注册脚本

stop();

//返回按钮.

fanghui.onRelease = function() {

win.title = "(教程Flash与ASP)用户登录";

msg.text = "";

gotoAndStop(1);

};

//提交按钮.

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

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

}

};

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

loginData.onLoad = function(success) {

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

if (success) {

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

if (loginData.zhucei == "true") {

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

msg.text = "注册成功";

username.text = "";

password.text = "";

} else {

msg.text = "用户名已存在";

}

} else {

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

}

};

下面是 add.asp 中的代码:

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

<%

’声明变量

dim db,conn,p,rs,username,password

’获取Flash中传过来的变量

username=Request("username")

password=Request("password")

’设置一个连接对象

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

’数据库的相对路径

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

’数据库的驱动

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

’打开连接

conn.Open p

’新建记录集对象

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

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

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

’打开查询语句

rs.open sql,conn,1,1

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

if rs.RecordCount=0 then

’关闭上面的查询对象.

rs.close

’SQL插入语句.插入新用户用的.这里的 password 因为是SQL中的关键字.所以要用[]括起来.

sql="insert into UserTable (username,[password]) values (’"&username&"’,’"&password&"’)"

’打开插入语句

rs.open sql,conn,1,3

’输出true告诉Flash用户已注册.

Response.Write("zhucei=true")

else

’否则就输出false告诉Flash用户已存在.

Response.Write("zhucei=false")

end if

’释放记录集对象rs

set rs=nothing

’关闭打开的连接

conn.close

’释放连接对象conn

set conn=nothing

%>

完整图片如图:

全部文件如图:

到这里就全部完成了.大家可以测试了.


大家都在看

回到顶部

下载声明 | 法律声明 | 版权声明 | 网站地图

鲨鱼©2022 冀ICP备12008853号-1