Flash与ASP--用户登录--用户注册程序 (本文转自蓝色理想chooseflash )

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 层;
第一帧是用户登录脚本.代码如下:

代码:

 

 
  1. //此帧是用户登录脚本
  2. stop();
  3. //将window组件设置为不可用.因为是做背景
  4. win.enabled = false;
  5. //新建LoadVars对象,用来发送和接收数据;
  6. var loginData:LoadVars = new LoadVars();
  7. //注册按钮
  8. register.onRelease=function(){
  9.     win.title="(教程Flash与ASP)用户注册";
  10.     msg.text="";
  11.     gotoAndStop(2);
  12. }
  13. //登录按钮.
  14. login.onRelease = function() {
  15.     //判断用户名和密码是不是为空.
  16.     if ((username.text == "") || (password.text == "")) {
  17.         msg.text = "请正确输入用户名或密码!";
  18.         //判断用户名和密码是否小于8位.
  19.     } else if((username.length<8)||(password.length<8)){
  20.         msg.text = "用户名和密码不能小于8位!";
  21.     } else {
  22.         msg.text = "验证中...";
  23.         //将用户名文体框的值付给loginData对象的username变量;
  24.         loginData.username = username.text;
  25.         //将用户密码文体框的值付给loginData对象的password变量;
  26.         loginData.password = password.text;
  27.         //使用get方法发送用户名和密码到login.asp中验证;再返回给loginData对象;
  28.         loginData.sendAndLoad("login.asp", loginData, "get");
  29.     }
  30. };
  31. //调用LoadVars对象的onLoad事件.
  32. loginData.onLoad = function(success) {
  33.     //判断加载login.asp是否成功;
  34.     if (success) {
  35.         //这个是ASP中查询数据库中返回的值;
  36.         if (loginData.success !=0) {
  37.             msg.text = "登录成功";
  38.             //这里大家可以写自己的代码.
  39.             username.text="";
  40.             password.text="";
  41.         } else {
  42.             msg.text = "用户名和密码不正确";
  43.         }
  44.     }else{
  45.         msg.text="连接网络失败";
  46.     }
  47. };
下面是 login.asp 中的代码:
代码:

 

  1. <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
  2. <%
  3. '声明变量
  4. dim db,conn,div,rs,success,username,password
  5. '获取Flash中传过来的变量
  6. username=Request("username")
  7. password=Request("password")
  8. '设置一个连接对象
  9. set conn=Server.Createobject("adodb.connection")
  10. '数据库的相对路径
  11. db=Server.MapPath("UserTable.mdb")
  12. '数据库的驱动
  13. div="Provider=Microsoft.Jet.OLEDB.4.0;""Data Source="
  14. '打开连接
  15. conn.Open div
  16. '新建记录集对象
  17. set rs=server.createobject("adodb.recordset"
  18. 'SQL查询语句,用来查询数据库中是否有数据;
  19. sql="select * from UserTable where username='"&username"' and password='"&password"'" 
  20. '打开查询语句
  21. rs.open sql,conn,1,1
  22. '如果数据库中没有数据rs.RecordCount将返回0;
  23. success=rs.RecordCount
  24. '将success变量发送到Flash中
  25. Response.Write("success="&success)
  26. '关闭记录集
  27. rs.close
  28. '释放记录集对象rs
  29. set rs=nothing
  30. '关闭打开的连接
  31. conn.close
  32. '释放连接对象conn
  33. set conn=nothing
  34. %>

到这里.用户登录就可以了.下面我们做的是用户注册;
第二帧:用户注册
在 body 层 按F6插入关键帧.分别修改舞台中的两个按钮的实例名为,fanghui 和 tijiao;
fanghui(返回),tijiao(提交);


然后在第二帧输入代码:

 
代码:

 

 
  1. //此帧是用户注册脚本
  2. stop();
  3. //返回按钮.
  4. fanghui.onRelease = function() {
  5.     win.title = "(教程Flash与ASP)用户登录";
  6.     msg.text = "";
  7.     gotoAndStop(1);
  8. };
  9. //提交按钮.
  10. tijiao.onRelease = function() {
  11.     //判断用户名和密码是不是为空.
  12.     if ((username.text == "") || (password.text == "")) {
  13.         msg.text = "用户名和密码不能为空!";
  14.         //判断用户名和密码是否小于8位.
  15.     } else if ((username.length<8) || (password.length<8)) {
  16.         msg.text = "用户名和密码不能小于8位!";
  17.     } else {
  18.         msg.text = "注册中...";
  19.         //将用户名文体框的值付给loginData对象的username变量;
  20.         loginData.username = username.text;
  21.         //将用户密码文体框的值付给loginData对象的password变量;
  22.         loginData.password = password.text;
  23.         //使用get方法发送用户名和密码到add.asp中查询;再返回给loginData对象;
  24.         loginData.sendAndLoad("add.asp", loginData, "get");
  25.     }
  26. };
  27. //调用LoadVars对象的onLoad事件.
  28. loginData.onLoad = function(success) {
  29.     //判断加载login.asp是否成功;
  30.     if (success) {
  31.         //这个是ASP中查询数据库中返回的值;
  32.         if (loginData.zhucei == "true") {
  33.             //这里大家可以写自己的代码.
  34.             msg.text = "注册成功";
  35.             username.text = "";
  36.             password.text = "";
  37.         } else {
  38.             msg.text = "用户名已存在";
  39.         }
  40.     } else {
  41.         msg.text = "连接网络失败";
  42.     }
  43. };
下面是 add.asp 中的代码:
代码:

 

  1. <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
  2. <%
  3. '声明变量
  4. dim db,conn,div,rs,username,password
  5. '获取Flash中传过来的变量
  6. username=Request("username")
  7. password=Request("password")
  8. '设置一个连接对象
  9. set conn=Server.Createobject("adodb.connection")
  10. '数据库的相对路径
  11. db=Server.MapPath("UserTable.mdb")
  12. '数据库的驱动
  13. div="Provider=Microsoft.Jet.OLEDB.4.0;""Data Source="
  14. '打开连接
  15. conn.Open div
  16. '新建记录集对象
  17. set rs=server.createobject("adodb.recordset"
  18. 'SQL查询语句,用来查询数据库中是否有数据;
  19. sql="select * from UserTable where username='"&username"'" 
  20. '打开查询语句
  21. rs.open sql,conn,1,1
  22. '如果没有数据rs.RecordCount将返回0;
  23. if rs.RecordCount=0 then
  24.    '关闭上面的查询对象.
  25.    rs.close
  26.    'SQL插入语句.插入新用户用的.这里的 password 因为是SQL中的关键字.所以要用[]括起来.
  27.    sql="insert into UserTable (username,[password]) values ('"&username"','"&password"')"
  28.    '打开插入语句
  29.    rs.open sql,conn,1,3
  30.     '输出true告诉Flash用户已注册.
  31.    Response.Write("zhucei=true")    
  32. else
  33.     '否则就输出false告诉Flash用户已存在.
  34. Response.Write("zhucei=false")
  35. end if
  36. '释放记录集对象rs
  37. set rs=nothing
  38. '关闭打开的连接
  39. conn.close
  40. '释放连接对象conn
  41. set conn=nothing
  42. %>
到这里就全部完成了.大家可以测试了.
运行IIS;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值