三个 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 (这是我电脑上的).
经典论坛讨论: http://bbs.blueidea.com/thread-2729523-1-1.html
本文链接:http://www.blueidea.com/tech/multimedia/2007/5083.asp
出处:蓝色理想
责任编辑:tada
上一页 用户登录/注册程序——Flash+ASP [1] 下一页
◎进入论坛RIA设计与应用版块参加讨论
|