flash和asp分页的一点心得

分页|心得

  看了这个的一些帖子,学到了很多东西,现在和大家一起分享

  flash现在只是一个显示的功能,过程中看了一些别人的东西,觉得分页似乎有很简单的实现方式.基本上都是用xml传送的.显示用 list 组件和 datagrid 都可以,这里我用的是动态文本,因为觉得组件用的太麻烦了.所以用了蠢办法,没办法,找不到更好的~~~下面代码中的 list[..]就是动态文本的名趁,一次显示15条

//显示程序如下:

//桢名称 "list"
stop();
var logList = new XML();
var logroot;
var page:Number; //当前页
var Tpage:Number; //保存总页
var Tnum:Number; //总日志数
var logname:String; //日志分类名称
var temp;
var i:Number;

//这里我用一个数组储存了对应的id号,如果用组件就不用这么麻烦了
var ids = new Array(15);

//两个按钮,用来翻页
bn_u.enabled = false;
bn_d.enabled = false;
if (page == null or page<1) {
page = 1;
}
//------------------------------
//清除函数;
function myclear() {
for (i=1; i<16; i++) {
ids[i-1] = 0;
list["lbn"+i]._visible = false;
list["ltitle"+i].text = "";
list["lauthor"+i] = "";
list["ltime"+i] = "";
}
}
//--------------------------------------
//--------------------------------------
myclear();
pageInfo.text = "正在读取数据...";
logList.ignoreWhite = true;
logList.load("Tree_list.asp?log_cat="+cat_id+"&page="+page);
//------------------------------------------------
//get数据函数
function logFunc(e) {
if (e) {
logroot = logList.firstChild;
logname = logroot.attributes.logname;
Tpage = logroot.attributes.Tpage;
Tnum = logroot.attributes.Tnum;
temp = logroot.firstChild;
list.ltitle1.text = Ftitle(temp.firstChild.nodeValue, 22);
list.lauthor1 = temp.attributes.author;
list.ltime1 = temp.attributes.Addtime;
ids[0] = temp.attributes.id;
i = 1;
list.lbn1._visible = true;
//循环读取节点
while (temp.nextSibling != null) {
temp = temp.nextSibling;
i++;
//如果是用别的方式显示,只需要改一下就可以了
ids[i-1] = temp.attributes.id;
list["lbn"+i]._visible = true;
list["ltitle"+i].text = Ftitle(temp.firstChild.nodeValue, 22);
list["lauthor"+i] = temp.attributes.author;
list["ltime"+i] = temp.attributes.Addtime;
}
pageInfo.text = logname+"共有日志"+Tnum+"篇 共"+Tpage+"页 当前是第"+page+"页 "+"15/页";
bn_u.enabled = true;
bn_d.enabled = true;
} else {
pageInfo.text = "当前没有日志。";
list.ltitle1.text = "读取数据出错,请联系管理员!";
}
}

//一个自定义的格式标题的函数,怕标题太长
function Ftitle(s, n) {
if (length(s)>n) {
s = s.substring(0, n-1)+"...";
}
return s;
}
logList.onLoad = logFunc;
//-------------------------------------
//按钮动作
Bn_up = new Object();
//按钮事件,判断页面大小是否超过值
Bn_up.click = function(evt) {
if (page>1) {
_root.page--;
gotoAndPlay("cycle");
} else {
stop();
}
};
Bn_d = new Object();
Bn_d.click = function(evt) {
if (page<Tpage) {
_root.page++;
gotoAndPlay("cycle");
} else {
stop();
}
};
bn_u.addEventListener("click", Bn_up);
bn_d.addEventListener("click", Bn_d);

桢"cycle"只有一个话:
gotoAndPlay("list");
//形成一个简单的循环

Tree_list.asp:
//log 是我的日志表 ,log_cat是分类表

  下面的asp很清楚了

<?xml version="1.0" encoding="gb2312"?>
<%
Response.ContentType = "text/xml"
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = 0
dim log_cat,page,pageSize,Tnum,Tpage,log_name
page=TreeRequest("page",1)
log_cat=TreeRequest("log_cat",1)
pageSize=15
call Tree_rs
if log_cat=0 or log_cat="" then
sql="select * from log order by written_time DESC,log_ID DESC"
else
sql="select * from log,log_cat where log.cat_id=log_cat.ID and cat_id="&log_cat&" order by written_time DESC,log_ID DESC"
End if
rs.open sql,conn,1,1
rs.PageSize=pageSize
Tnum=rs.RecordCount
Tpage=Int(Tnum/pageSize*-1)*-1
if page="" then page=1
if Tnum<>0 then rs.AbsolutePage=page
if log_cat=0 or log_cat="" then
log_name="[全部分类]"
else
log_name="["&rs("cat_name")&"]"
End if
’以下输出xml
’------------------------------------------------
response.write("<Tree logname=’"&log_name&"’ Tnum=’"&Tnum&"’ Tpage=’"&Tpage&"’>")
if rs.eof then
rs.close
else
do while not rs.eof and pageSize>0
response.write("<Trees author=’"&rs("log_author")&"’ Addtime=’"&rs("written_time")&"’ id=’"&rs("log_ID")&"’>")
response.write("<![CDATA["&rs("log_tittle")&"]]></Trees>")
pageSize=pageSize-1
rs.movenext
loop
rs.close
End if
//关闭rs
call Tree_rsclose
call Tree_conclose
response.write("</Tree>")
%>

  代码好象很乱,希望能对正在做这个的朋友有点帮助,如果以上有bug,请指教

时间: 2024-08-04 09:58:16

flash和asp分页的一点心得的相关文章

flash和asp分页的一点心得与flash脚本_应用技巧

看了这个的一些帖子,学到了很多东西,现在和大家一起分享  flash现在只是一个显示的功能,过程中看了一些别人的东西,觉得分页似乎有很简单的实现方式.基本上都是用xml传送的.显示用 list 组件和 datagrid 都可以,这里我用的是动态文本,因为觉得组件用的太麻烦了.所以用了蠢办法,没办法,找不到更好的~~~下面代码中的 list[..]就是动态文本的名趁,一次显示15条 //显示程序如下:  //桢名称 "list"  stop();  var logList = new X

flash和asp分页的一点心得与flash脚本

看了这个的一些帖子,学到了很多东西,现在和大家一起分享  flash现在只是一个显示的功能,过程中看了一些别人的东西,觉得分页似乎有很简单的实现方式.基本上都是用xml传送的.显示用 list 组件和 datagrid 都可以,这里我用的是动态文本,因为觉得组件用的太麻烦了.所以用了蠢办法,没办法,找不到更好的~~~下面代码中的 list[..]就是动态文本的名趁,一次显示15条 //显示程序如下: //桢名称 "list"  stop();  var logList = new XM

flash和asp分页

flash和asp分页的一点心得 看了这个的一些帖子,学到了很多东西,现在和大家一起分享 flash现在只是一个显示的功能,过程中看了一些别人的东西,觉得分页似乎有很简单的实现方式.基本上都是用xml传送的.显示用 list 组件和 datagrid 都可以,这里我用的是动态文本,因为觉得组件用的太麻烦了.所以用了蠢办法,没办法,找不到更好的~~~下面代码中的 list[..]就是动态文本的名趁,一次显示15条 //显示程序如下: //桢名称 "list" stop(); var lo

ASP分页祥解

分页 关于ASP分页的问题,对于初学者是一个比较重要的问题,也是各个网站运用最为广泛的技术,下面我就把我总结的一点小经验介绍给大家(写的不好,请大家指点)1.原理:ASP分页其实是将数据库中的记录分割成若干段"分屏显示",为什么叫"分屏显示"显示,因为其实显示的原始页面只有1页,通过控制数据库显示,来刷新页面的显示内容(可能一些朋友会误会为动态产生若干页面来显示,呵呵,我刚刚学的时候也是这样以为的)2.用到的几个函数rs.pagesize--->定义一页显示记

Flash和Asp数据库的结合应用

数据|数据库 在看这个例子之前,先讲讲Flash和Asp结合的原理,其实懂一点ASP的朋友都知道ASP是基于HTML的. 其实Flash和Asp接口的原理和纯ASP文件之间交互的原理是一样的,简单地说就是页面之间的数据交换.了解了这一点之后,我们来看看下面这个简单的例子: 这个例子是把ACCESS内的数据读出来,并在Flash内显示出来.这个例子一共有三个主要文件,一个是ACCESS的数据库文件employees.mdb,它有一个employees表,有四个字段:ID,Namelast,Last

谈谈我对截取一定长度字符串的一点心得,欢迎指正

心得|字符串         vbs和js都提供了截取一定长度的字符串的函数,但有一个问题是这些函数都将中文字符视为1个字节,而不是正常的2个字节,如果这些输入的数据要提交到数据库中的话,很可能这些数据的真正长度回答与数据库中该字段所允许的最大长度,于是就出错了.        最开始我不会这样做,看了 cheery_ke 兄发表的帖子http://www.dev-club.com/club/bbs/showAnnounce.asp?id=1227955后才知道该怎么做.具体程序是'------

FLASH与ASP通信原理入门

经常有人问我FLASH留言板的制作方法,无奈这东西一句两句没办法说清楚,于是就萌发了写教程的想法.可后来又一想,授人以鱼,不如授人以渔,还不如集中精力好好讲将FLASH与ASP的通讯原理,原理通了,具体项目就可以自由发挥了. 我这个教程面向初级群体,在开始教程之前,我假设你已经具备FLASH操作基础知识,了解IIS配置以及运行环境.尽管FLASH与ASP通信方式有很多,但这篇教程中我选择使用LoadVars类,一因为LoadVars类容易掌握,易于讲解:二是因为它不牵扯太多其他方面的知识.另外,

FLASH结合ASP数据库的应用

数据|数据库 在讨论例子之前,先了解Flash和Asp结合的原理,其实懂一点ASP的朋友都知道ASP是基于HTML的.Flash和Asp接口的原理和纯ASP文件之间交互的原理是一样的,简单地说就是页面之间的数据交换. 而在页面之间传递数据我们是通过函数实现的: LoadVariables(Flash4版本) / loadVariablesNum(Flash5版本.FlashMX版本) 语法: loadVariables (url ,location [, variables]); loadVar

用FLASH和ASP做留言本-FLASH篇

                    用FLASH和ASP做留言本-FLASH篇 关于用ASP向FLASH中写入数据:如:要让FLASH知道A=1这个值,必须这样输入&A=1°ASP中用这样的语句response.write("&A=1"). 在FLASH中引入ASP文件,可以用这样的语句来得到: loadVariables ("http://localhost/view.asp", "");(这里是默为本地机子) 而ASP要从