图文演示Flash+ASP实现用户登录/注册程序

 更新时间:2007年12月12日 21:37:17   作者:  

三个 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
%>
到这里.用户登录就可以了.下面我们做的是用户注册;

第二帧: 用户注册

在 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,div,rs,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&"'" 
'打开查询语句
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
%>
完整图片如图:


全部文件如图:

到这里就全部完成了.大家可以测试了.
运行IIS;
新建网站,路径为你的asp文件的路径.
在IE输入http://localhost/login/login.html (这是我电脑上的).
打包文件下载地址

相关文章

最新评论