帝国CMS通用封装的ajax加载信息结构代码,改改能够应用到任何地方。
HTML代码
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <htmlxmlns="http://www.w3.org/1999/xhtml"xml:lang="en"> <head> <metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"> <title>Document</title> <scriptsrc="/ajax/jquery-1.11.2.min.js"type="text/javascript"></script> <scriptsrc="/ajax/loadNews.js"type="text/javascript"></script> <styletype="text/css"> li{ height:40px; line-height:40px; } </style> </head> <body> <pid="html"></p> <p><buttonid="click">点击加载更多</button></p> </body> </html>
js代码
(function($){ $.load_news=function(initdata,ajax_offset){ window.ajax_offset=ajax_offset; varajaxutl='/ajax/result.php'; varinit_data={ limit:0, offset:window.ajax_offset, tbname:'', classid:0, order:'', dom:'', click_dom:'' } init_data=$.extend({},init_data,initdata); varresult_lang={ data_0:'<fontcolor="red"size="+1">暂无数据</font>', tbname_not:'没有此数据表' } $.post( ajaxutl, init_data, function(data){ vardata=data; if(data.status=='data_0') { //没有数据了~~~~ $(init_data.dom).append(result_lang[data.status]); //移除click $(init_data.click_dom).remove(); //设置按钮 //$(init_data.click_dom).attr('disabled','disabled'); returnfalse; } $(init_data.dom).append(data.html); window.ajax_offset=data.offset; }, 'json' ); } })(jQuery); $(function(){ $("#click").click(function(){ $.load_news({ limit:20,//每次查询多少条 tbname:'news',//数据表称号 classid:3,//栏目ID order:'desc',//排序 dom:'#html',//向哪个DOM节点中刺进数据ID请填写#class填写.例如<pid="html">填写#html click_dom:'#click'//触发事情的DOM },window.ajax_offset); }) })
php代码
<?php include'../e/class/connect.php';//数据库配置文件与公共函数文件 include'../e/class/db_sql.php';//数据库操作文件 include'../e/data/dbcache/class1.php';//栏目缓存文件 $link=db_connect();//链接数据库 $empire=newmysqlquery();//实例化数据库操作类 $p=$_POST;//简写post $_POST=null;//开释post $filter='RepPostVar';//过滤不合法数据 $tbname=$filter($p['tbname']);//数据表名 //判别表是否存在 if(!$tbname||in_array($tbname,$etable_r)) { die(json_encode(array('status'=>'tbname_not'))); } //栏目ID $classid=(int)$p['classid']; //order $order=$filter($p['order']); //查询偏移量 $offset=(int)$p['offset']; if($order=='desc'&&$offset!=0) { $where_offset='andid<'.$offset; }else { $where_offset=''; } if($order=='asc') { $where_offset='andid>'.$offset; } $where='WHERE1'; $where.=$classid?'AND`classid`='.$classid:''; $where.=$where_offset; $order='ORDERBYid'.$order; $limit=(int)$p['limit']; $limit='LIMIT'.$limit; $sql="SELECT{$maxid}id,classid,newspath,filename,groupid,titleurl,titleFROM`{$dbtbpre}ecms_{$tbname}`{$where}{$order}{$limit}"; $num=$empire->num($sql); if($num<1){ die(json_encode(array('status'=>'data_0','sql'=>$sql))); } $query=$empire->query($sql); $last=0; $html=''; while($r=$empire->fetch($query)){ $last=$r['id']; $url=sys_ReturnBqTitleLink($r); $html.=<<<HTML_LIST <li>id---$r[id]<ahref="{$url}">$r[title]</a></li> HTML_LIST; } die(json_encode(array('status'=>'ok','html'=>$html,'offset'=>$last,'sql'=>$sql))); ?>
声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:123456@qq.com 我们将配合处理!
原文地址:帝国CMS封装的ajax加载信息框架代码发布于2022-07-02 07:43:19