分享
 
 
 

flash+asp+xml留言本教程

王朝asp·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

演示地址

源文件下载

在下载到本地或者上传到空间上之前,请到后台修改参数设置里面的地址,然后进行测试!

如果你的机器或者服务器不支持FSO,请手动修改URL.XML文件里面的地址!

ASP主要部分:

page.asp (传给flash第n页的n条纪录)

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<% show_page = 9 '每页显示的纪录

db = "data/data.mdb" '数据库存放目录

'-连接数据库

set conn=server.createobject("adodb.connection")

conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath(db)

'-----------------------------------------------------------------------

'用途:将UTF-8编码汉字转为GB2312码,兼容英文和数字!

function encodestr(str)

dim i

str=trim(str)

str=replace(str,"'","""")

str=replace(str,vbCrLf&vbCrlf,"</p><p>")

encodestr=replace(str,vbCrLf,"<br>")

end function

'用途:将UTF-8编码汉字转为GB2312码,兼容英文和数字!

Function uni(Chinese)

For j = 1 to Len (Chinese)

a=Mid(Chinese, j, 1)

uni= uni & "&#x" & Hex(Ascw(a)) & ";"

next

End Function %>

<%

'如果FLASH传过来变量

if request("action")="showpage" then

'打开纪录

sql="select * from gbook order by id desc"

set rs=server.createobject("adodb.recordset")

rs.open sql,conn,1,1

'---------------分页 开始

if not rs.eof then

'如果有记录

rs.PageSize = show_page

total=rs.RecordCount '共多少条记录

maxpage=rs.PageCount '共分几页

page=request("page") '当前页

if Not IsNumeric(page) or page="" then

page=1

else

page=cint(page)

end if

if page<1 then

page=1

elseif page>maxpage then

page=maxpage

end if

rs.AbsolutePage=Page

else

'如果没记录

total=0

maxpage=0

page=0

out=""

wujilu="1"

'把wujilu变量传给flash,让flash知道没有记录然后做出相应的动作

'输出xml文件格式

Response.Write "<?xml version='1.0' encoding='utf-8'?>"

Response.Write "<gbook total='"&total&"' maxpage='"&maxpage&"' page='"&page&"' wujilu='"&wujilu&"'></gbook>"

Session.CodePage="936"

end if

'---------------分页 结束

'---------------打开 PageSize 条记录 开始

if not rs.eof then

'如果有记录

for i=1 to rs.PageSize

page_id=rs("id")

page_name=uni(rs("name"))

if len(rs("title")) > 19 then '截取字符

page_title=left(rs("title"),19)&".."'截取字符

else

page_title=rs("title")

end if

page_title=uni(page_title)

page_date=rs("date")

out=out&"<info page_id='"&page_id&"' page_name='"&page_name&"' page_title='"&page_title&"' page_date='"&page_date&"' />"

rs.movenext

if rs.EOF then

i=i+1

Exit For

end if

next

end if

'---------------打开 PageSize 条记录 结束

rs.close

set rs=nothing

conn.close

set conn=nothing'释放资源

'输出分页信息,xml格式

Response.Write "<?xml version='1.0' encoding='utf-8'?>"

Response.Write "<gbook total='"&total&"' maxpage='"&maxpage&"' page='"&page&"'>"&out&"</gbook>"

Session.CodePage="936"

end if

%>

show.asp(传给flash单条纪录的信息)

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<%

show_page = 9 '每页显示的纪录

db = "data/data.mdb" '数据库存放目录

set conn=server.createobject("adodb.connection")

conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath(db)

'-----------------------------------------------------------------------

'用途:将UTF-8编码汉字转为GB2312码,兼容英文和数字!

function encodestr(str)

dim i

str=trim(str)

str=replace(str,"'","""")

str=replace(str,vbCrLf&vbCrlf,"</p><p>")

encodestr=replace(str,vbCrLf,"<br>")

end function

Function uni(Chinese)

For j = 1 to Len (Chinese)

a=Mid(Chinese, j, 1)

uni= uni & "&#x" & Hex(Ascw(a)) & ";"

next

End Function

'------------------------------------------------------------

%>

<%

if request("action")="show" then

'打开纪录为flash传过来的第show_id条信息

sql="select * from gbook where id="&request("show_id")

set rs=server.createobject("adodb.recordset")

rs.open sql,conn,1,1

'uni参数,就是把gb编码转换成utf-8编码,要不然flash会乱码

show_name=uni(rs("name"))

show_id=uni(rs("id"))

show_title=uni(rs("title"))

if rs("email")<>"" then

show_email=uni(rs("email"))

end if

if rs("qq")<>"" then

show_qq=uni(rs("qq"))

end if

show_content=uni(rs("content"))

show_date=uni(rs("date"))

out=out&"<info show_name='"&show_name&"' show_id='"&show_id&"' show_title='"&show_title&"' show_email='"&show_email&"' show_qq='"&show_qq&"' show_content='"&show_content&"' show_date='"&show_date&"' />"

rs.close

set rs=nothing

conn.close

set conn=nothing

'输出xml格式

Response.Write "<?xml version='1.0' encoding='utf-8'?>"

Response.Write "<gbook>"&out&"</gbook>"

end if

%>

add.asp(flash传给asp增加纪录)

<%

show_page = 9 '每页显示的纪录

db = "data/data.mdb" '数据库存放目录

set conn=server.createobject("adodb.connection")

conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath(db)

'-----------------------------------------------------------------------

'用途:将UTF-8编码汉字转为GB2312码,兼容英文和数字!

function encodestr(str)

dim i

str=trim(str)

str=replace(str,"'","""")

str=replace(str,vbCrLf&vbCrlf,"</p><p>")

encodestr=replace(str,vbCrLf,"<br>")

end function

Function uni(Chinese)

For j = 1 to Len (Chinese)

a=Mid(Chinese, j, 1)

uni= uni & "&#x" & Hex(Ascw(a)) & ";"

next

End Function

'------------------------------------------------------------

%>

<%

Session.CodePage="65001"

if encodestr(request("action"))="add" then'如果flash传过来的变量是add

if encodestr(request("w_name"))="" then'如果w_name等于空

cuowu="n"

response.write"&addok="+cuowu '

elseif encodestr(request("w_title"))="" then '如果标题空

cuowu="t"

response.write"&addok="+cuowu

elseif encodestr(request("w_content"))="" then'如果留言内容空

cuowu="c"

response.write"&addok="+cuowu

end if

if cuowu="" then '如果姓名,标题,留言内容不为空

sql="select * from gbook "

set rs=server.createobject("adodb.recordset")

rs.open sql,conn,3,3

rs.addnew '增加纪录

rs("name")=encodestr(request("w_name"))

rs("title")=encodestr(request("w_title"))

if encodestr(request("w_email"))="" then

rs("email")=null

else

rs("email")=encodestr(request("w_email"))

end if

if encodestr(request("w_qq"))="" then

rs("qq")=null

else

rs("qq")=encodestr(request("w_qq"))

end if

rs("content")=encodestr(request("w_content"))

rs("date")=date()

rs.update

rs.close

set rs=nothing

conn.close

set conn=nothing

response.write"&addok=ok" '返回给flash 留言成功

end if

end if

Session.CodePage="936"

%>

FLASH部分:

留言列表

function showPage()//定义函数

{

function titlemenu()

{

gbtitle.attachMovie("title_mc", "title_mc" + i, i);//循环增加MC

gbtitle["title_mc" + i]._y = 30 * i;//MC的位置

gbtitle["title_mc" + i].page_id = gb[i].attributes.page_id;//title_mc里面的动态文本显示asp传来的变量

page_id=gb[i].attributes.page_id;

gbtitle["title_mc" + i].page_title = gb[i].attributes.page_title;

gbtitle["title_mc" + i].page_date = gb[i].attributes.page_date;

gbtitle["title_mc" + i].page_name = gb[i].attributes.page_name;

i++;

if (i >= nTotal)//如果纪录大于每页显示的纪录

{

clearInterval(nInterval);

} // end if

} // End function

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有