as3+xml+asp+access做的有奖问答

 更新时间:2009年02月10日 21:38:22   作者:  
as3+xml+asp+access做的有奖问答实现代码
XML部份
复制代码 代码如下:

<?xml version="1.0" encoding="utf-8"?>
<li>
<id>
<pp>1、中国114黄页贵港站的网址是?</pp>
<aa>www.gg114chn.com</aa>
<aa>gg.114chn.com</aa>
<aa>www.114chn.com</aa>
<aa>www.114.com</aa>
</id>
<id>
<pp>2、中国114黄页的联系电话号码是多少?</pp>
<aa>0775—4320568</aa>
<aa>0775—4553709</aa>
<aa>0775—4563709</aa>
<aa>114</aa>
</id>
<id>
<pp>3、中国114黄页贵港运营中心客服QQ是?</pp>
<aa>10000</aa>
<aa>380463801</aa>
<aa>1015651717</aa>
<aa>854512401</aa>
</id>
<id>
<pp>4、中国114黄页的总公司是?</pp>
<aa>中国移动</aa>
<aa>中国电信</aa>
<aa>中国114号码百事通</aa>
<aa>北京互联星空文化传播有限公司</aa>
</id>
</li>

AS3类-myform,放在一个myfirst包里。生成一个主要由ComboBox组件组的表单,
复制代码 代码如下:

package myfirst{
import flash.display.Sprite;
import flash.events.*;
import flash.net.*;
import flash.text.TextField;
import flash.text.TextFieldType;
import fl.data.DataProvider;
import fl.controls.Button;
import fl.controls.ComboBox;
import fl.controls.SelectableList;
import flash.system.System;
public class myform extends Sprite {
System.useCodePage = true;
var a_form:String="";
var a_num:int;
var a_array:Array=new Array();
public function myform():void {
var loader:URLLoader=new URLLoader;
configureListeners(loader);
var request:URLRequest=new URLRequest("pa.xml");
try {
loader.load(request);
} catch (error:Error) {
trace("Unable to load requested document.");
}
}
private function configureListeners(dispatcher:IEventDispatcher):void {
dispatcher.addEventListener(Event.COMPLETE,completeHandler);
}
private function completeHandler(event:Event):void {
XML.ignoreProcessingInstructions=true;
var loader:URLLoader=URLLoader(event.target);
var myxml:XML=XML(loader.data.toString());
a_num=myxml.id.pp.length();
for (var i:int=0; i <= a_num - 1; i++) {
var p_text:TextField=new TextField();
p_text.text=myxml.id[i].pp;
p_text.width=250;
p_text.y=i*50;
addChild(p_text);
var mycombobox:ComboBox=new ComboBox();
mycombobox.dropdownWidth =180;
mycombobox.move(20,20+i*50);
mycombobox.prompt="选择答案";
mycombobox.addEventListener(Event.CHANGE, cardSelected);
addChild(mycombobox);
for (var j:int=0; j<=3; j++) {
mycombobox.addItem({label:myxml.id[i].aa[j]});
}
}
}
private function cardSelected(event:Event):void {
var cb:ComboBox=event.currentTarget as ComboBox;
var cbindex:int=getChildIndex(cb)/2;
var aa:int=cb.selectedIndex;
a_array[cbindex]=(String(aa));
}
public function mm(event:Event):void {
for (var k:int=0; k<=a_num-1; k++) {
a_form+=String(a_array[k]);
}
trace(a_form);
}
}
}

同样放在myfirst包里的另一个类url_asp,主要用于连接ASP文件
复制代码 代码如下:

package myfirst{
import flash.display.Sprite;
import flash.events.*;
import flash.net.*;
import flash.text.TextField;
import flash.text.TextFieldType;
import fl.controls.Button;
import fl.controls.TextInput;
import flash.system.System;
public class url_asp extends Sprite {
public function url_asp() {
System.useCodePage=true;
var form_name:TextField=new TextField();
var form_tel:TextField=new TextField();
form_name.text="姓名:";
form_tel.text="电话:";
form_name.x=100;
form_name.y=350;
form_tel.x=100;
form_tel.y=300;
addChild(form_name);
addChild(form_tel);
var form_value=new myform();
form_value.x=10;
form_value.y=10;
addChild(form_value);
var myname:String="";
var telephone:String="";
var a_form:String ="";
var variables:URLVariables=new URLVariables();
var myrequest:URLRequest=new URLRequest("save.asp");
var loader:URLLoader = new URLLoader();
var mybutton1:Button=new Button();
mybutton1.x=180;
mybutton1.y=250;
mybutton1.label="确认答案";
mybutton1.addEventListener(MouseEvent.CLICK,form_value.mm);
addChild(mybutton1);
var myname_input:TextInput=new TextInput();
myname_input.x=180;
myname_input.y=350;
addChild(myname_input);
var telephone_input:TextInput=new TextInput();
telephone_input.x=180;
telephone_input.y=300;
addChild(telephone_input);
var mybutton:Button=new Button();
mybutton.x=180;
mybutton.y=400;
mybutton.label="提交信息";
addChild(mybutton);
mybutton.addEventListener(MouseEvent.CLICK,onclik);
function onclik(event:Event):void {
variables.myname=myname_input.text;
variables.telephone=telephone_input.text;
variables.a_form= form_value.a_form;
trace( form_value.a_form);
myrequest.data=variables;
myrequest.method=URLRequestMethod.POST;//指定 URLRequest 对象为 POST。
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.load(myrequest);//发送数据
}
}
}
}

建一个FLA,言文档类就写myfirst.url_asp。
ASP部份,三个文件。
---conn.asp---
asp文件1数据库连接
复制代码 代码如下:

<%
Dim conn
Set conn=Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("msg.mdb")
%>

--save.asp----
asp文件2保存数据
复制代码 代码如下:

<!-- #include file=conn.asp -->
<%
if request("myname")="" then
response.Write("no data")
response.End()
else
myname=Request("myname")
telephone=Request("telephone")
a_form=Request("a_form")
sql="Insert into data (myname,telephone,a_form) values ('"&myname&"','"&telephone&"','"&a_form&"')"
conn.Execute(sql)
conn.close
Set conn=Nothing
Response.Write "ok"
end if
%>

----list.asp------
asp文件3查看答题者
复制代码 代码如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
<!--
body {
background-color: #B57202;
}
-->
</style></head>
<!-- #include file="conn.asp" -->
<body>
<%
dim rs_zl
set rs_zl =server.createobject("adodb.recordset")
rs_zl.open "select * from data",conn,1,1
rs_zl.pagesize=15
if request("page")<>"" then
epage=cint(request("page"))
if epage<1 then epage=1
if epage>rs_zl.pagecount then epage=rs_zl.pagecount
else
epage=1
end if
rs_zl.absolutepage=epage
%>
<table width="750" border="0" cellpadding="2" cellspacing="2">
<tr bgcolor="#666666">
<td>ID</td>
<td>姓名</td>
<td>电话</td>
<td>答案</td>
<td>&nbsp;</td>
</tr>
<%
for i=0 to rs_zl.pagesize-1
if rs_zl.eof then exit for
%>
<tr bgcolor="#666666">
<td><%=rs_zl("id")%></td>
<td><%=rs_zl("myname")%></td>
<td><%=rs_zl("telephone")%></td>
<td><%=rs_zl("a_form")%></td>
<td>&nbsp;</td>
</tr>
<%
rs_zl.movenext
next
%>
</table>
<table width="530">
<tr>
<td width="124" height="38">&nbsp;</td>
<td width="259">
<p align="center">
<a href="list.asp">首页</a>&nbsp;
<a href="list.asp?page=<%=epage-1%>">前一页</a>&nbsp;
<a href="list.asp?page=<%=epage+1%>">后一页</a>&nbsp;
<a href="list.asp?page=<%=rs_zl.pagecount%>">末页</a>
</p>
<p align="center">现在是第<%=epage%>页一共有<%=rs_zl.pagecount%>页</p>
</td>
<td width="131">&nbsp;</td>
</tr>
</table>
<%
rs_zl.close
set rs_zl = nothing
conn.close()
%>
</body>
</html>

相关文章

  • AS3自写类整理笔记 ClassLoader类

    AS3自写类整理笔记 ClassLoader类

    在用flash做项目的时候,把一些元件,通过设置链接类,然后使用这个类,通过getClass方法即可把这个素材拿下来
    2008-06-06
  • As3.0 xml + Loader应用代码

    As3.0 xml + Loader应用代码

    简单说说AS3.0中对于XML支持的不同吧: .AS2.0对XML的支持勉勉强强,将就着可以用。而AS3.0中对XML的支持是全方位的,极其强大和灵活的
    2008-03-03
  • Actionscript 3.0 鼠标事件

    Actionscript 3.0 鼠标事件

    这本书是一本经典的书籍,说实话一些小的AS3的项目是做了好几个,基本的语法也都知道(其实有面向对象编程语言的基础后再入门一门新的语言还是很快的)。现在找到了这边经典书籍完整版,就好好看看,顺便写一些总结。
    2009-02-02
  • AS3打开新窗口不被屏蔽的代码

    AS3打开新窗口不被屏蔽的代码

    有时候flash打开的网址会出现被屏蔽的现象,如何能轻松的打开而不被屏蔽呢,下面是具体的代码。
    2010-08-08
  • Actionscript 3.0中Singleton实现 修正篇

    Actionscript 3.0中Singleton实现 修正篇

    说明:上一篇"一个简单的Actionscript的单态模式类"的实现在Actionscript中报错,具体原因会在这篇Blog中详细说明。
    2009-02-02
  • as3 rollOver or mouseOver使用说明

    as3 rollOver or mouseOver使用说明

    rollOver与mouseOver同样在鼠标移到目标上时触发事件,细微区别在于,mouseOver的bubbles等于true,而rollOver的bubbles是false.
    2009-10-10
  • flash PureMVC 使用例子

    flash PureMVC 使用例子

    昨天下了PureMVC, 看了一天文档, 迷茫啊, 找例子也没找到, 后来破解了一个看了一下, 大概地写了一个简单的用例, 先算是学习笔记吧, 先把这最简单的例子做法写一下吧( 也不知道这种理解是否正确哦~~汗一个!)
    2009-01-01
  • Google Analytics在Flash cs3下的使用教程分析

    Google Analytics在Flash cs3下的使用教程分析

    因为工作的原因,最近使用到Google Analytics组件,这个组件在网上的资料很多,但是大部分都是详谈组件的优势的,具体的使用没有很详细的说明
    2009-02-02
  • AS3中的反射(速记) 分析

    AS3中的反射(速记) 分析

    详细了解AS3的反射,请google相关文章,这里只是速记一下
    2008-03-03
  • 编写高效率的AS3代码的小技巧

    编写高效率的AS3代码的小技巧

    最近我研究了一些AS3代码优化的文章,一般都是集中在研究loops 和 Number types上的,本文不在重复类似的测试
    2009-02-02

最新评论