
在上一篇教程《Flash 与 Asp 的结合使用》中我们介绍了Flash与Asp结合应用的原理,现在我们就来看看两者结合应用的实例――论坛的实现。先来看看实例的效果,有登陆、查看主题、查看具体内容、发表新主题、删除等功能,在本实例上面稍做修改,就是一个比较完善的论坛了。下面我们按顺序来一项一项实现论坛的功能。
一 、登陆部分
登陆部分的基本原理是:在Flash端输入用户名和密码,通过Asp查询数据库,如果用户名和密码正确,就跳转到登陆成功界面,否则就跳转到登陆失败界面。
A、 Asp部分
新建一个空白文件,命名为Login.asp,内容如下:
注释1所在的行是针对SQL SERVER的连接字符串,要根据自己设置的数据库的不同,做相应的改动。如果用其他的数据库的时候,适当改动此字符串即可。如常见的ACCESS数据库的连接串如下:
strC地址/xx.mdb")"
(注:Access 97,这里是按地址连接,如:data/bbs.mdb)
strC地址/xx.mdb")
(注:Access 2000)
注释2为当登陆成功时返回userlogin的值为success,否则为unsuccess。
B、 Flash部分
1、在属性面板上,将第一帧的“帧标签”设为“login”。在第一帧的Acti&userpwd=" add _root.userpwd, this, "POST");
_root.loginloop.gotoAndPlay(2);
}
}
这是向服务器端发送请求,同时让“loginloop”开始循环。
6、在主场景中的第5帧中插入关键帧,将此帧命名为“loginfalse”,此帧场景中的布局如图4所示。在帧的ActiAuthor")) & "&" & "id" & num & "=" & trim(rstemp("ID")) & "&" &"sub" & num & "=" & strTitle & "&")
num = num + 1
rstemp.MoveNext
loop
respissue.asp", this, "POST"); ‘注释1
setProperty("_root.pageload", _visible, "1"); ‘注释1
setProperty("_root.pagedown", _visible, "0");
setProperty("_root.pageup", _visible, "0");
setProperty("_root.sb0", _visible, "0");
setProperty("_root.sb1", _visible, "0");
setProperty("_root.sb2", _visible, "0");
setProperty("_root.sb3", _visible, "0");
setProperty("_root.sb4", _visible, "0");
setProperty("_root.sb5", _visible, "0");
setProperty("_root.sb6", _visible, "0");
setProperty("_root.sb7", _visible, "0");
setProperty("_root.db0", _visible, "0");
setProperty("_root.db1", _visible, "0");
setProperty("_root.db2", _visible, "0");
setProperty("_root.db3", _visible, "0");
setProperty("_root.db4", _visible, "0");
setProperty("_root.db5", _visible, "0");
setProperty("_root.db6", _visible, "0");
setProperty("_root.db7", _visible, "0");
_root.su0 = "";
_root.su1 = "";
_root.su2 = "";
_root.su3 = "";
_root.su4 = "";
_root.su5 = "";
_root.su6 = "";
_root.su7 = "";
_root.au0 = "";
_root.au1 = "";
_root.au2 = "";
_root.au3 = "";
_root.au4 = "";
_root.au5 = "";
_root.au6 = "";
_root.au7 = "";
_root.textnum = "";
stop();
注释1为向服务器发送请求,注释2以下部分为初始化场景中的各个控件。
2、将场景中所有的文本框的类型都设置为“动态文本”,将“主题”下面的文本框变量依次命名为su0、su1、su2、su3、su4、su5、su6、su7。将“作者”下面的文本框变量依次命名为au0、au1、au2、au3、au4、au5、au6、au7。
3、新建一个组件,命名为“issueloop”,在组件的第一帧的ActiPOST");
_root.issueloop.gotoAndPlay(2);
}
将“下一页”ButtPOST");
_root.issueloop.gotoAndPlay(2);
}
将两个Button之间的文本框的变量命名为“textnum”,文本类型为“动态文本”。
上一页、下一页的Action其实也就是再向服务器端发送“查看主题”的请求,只是发送的nowpage这个参数不同而已。
C、 小结与提高
查看主题部分完成了,原理不会非常复杂,但实现起来有点繁琐,这是论坛比较复杂的部分。其中在Asp的实现部分比较有技巧,只是传送了一个nowpage参数,就可以实现分页的效果。
(出处:PConline)
无忧站长学院,建站自然无忧www.5ucms.org