supesite完美实现调用资讯显示缩略图.doc_第1页
supesite完美实现调用资讯显示缩略图.doc_第2页
supesite完美实现调用资讯显示缩略图.doc_第3页
supesite完美实现调用资讯显示缩略图.doc_第4页
全文预览已结束

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

supesite完美实现调用资讯显示缩略图本调用代码用于放置在首页中,列表模块带缓存,每个分页的缓存时间相差20秒,避免同一时间所有缓存全部失效,某一时刻非常缓慢的问题。列表数量统计的模块也带缓存。取所有频道的资讯文章,有缩略图显示缩略图,无缩略图显示无缩略图的文件。对比嵌套循环查询,极大减少数据库查询次数(嵌套查询可能达到11次数据库查询),本方法只需查询一次数据库。列表模块对应的SQL语句为SELECT i.itemid,i.catid,i.uid,i.username,i.subject,i.dateline,i.viewnum,i.replynum,i.digest,i.top,i.picid,,n.message,a.thumbpath,a.subject AS a_subject FROM supe_spaceitems iINNER JOIN supe_spacenews nON i.itemid=n.itemid INNER JOIN supe_categories cON i.catid=c.catid LEFT JOIN supe_attachments aON i.picid=a.aid WHERE i.type=newsORDER BY i.top DESC,i.itemid DESC两个INNER JOIN内联一个LEFT JOIN左连接做四表联查,全部为主键或者索引查询,相对效率高。由于用了联查,block模块中的perpage分页代码无效,只能自己调用multi函数处理分页内容。分页数量统计对应的SQL语句为SELECT count(itemid)AS total FROMsupe_spaceitemsWHERE type=newscachename缓存以mynews_pagexx命名的变量,解决缓存覆盖问题。SupeSite 7.5,256M内存VPS服务器在每秒1000次并发压力下,关闭缓存平均页面执行时间为0.08秒,开启缓存平均0.006秒执行时间。完整调用代码如下:!-Article begin-div class=article!-eval$basecachetime=3500;/*设置本页面基础缓存时间*/-!-eval$baseperpage=10;/*设置本页面的单页文章数量*/-!-eval$mypage=$_SGETpage?$_SGETpage:1;-!-eval$mystart=($mypage-1)*$baseperpage-!-eval$mycachename=mynews_page.$mypage-!-eval$mycachetime=$basecachetime+$mystart*2-!-block name=spacenewsparameter=type/news/sql/SELECT%20i.itemid%2C%20i.catid%2C%20i.uid%2C%20i.username%2C%20i.subject%2C%20i.dateline%2C%20i.viewnum%2C%20i.replynum%2C%20i.digest%2C%20i.top%2C%20i.picid%2C%20%2C%20n.message%2C%20a.thumbpath%2C%20a.subject%20AS%20a_subject%0D%0AFROM%20supe_spaceitems%20i%0D%0AINNER%20JOIN%20supe_spacenews%20n%20ON%20i.itemid%20%3D%20n.itemid%0D%0AINNER%20JOIN%20supe_categories%20c%20ON%20i.catid%20%3D%20c.catid%0D%0ALEFT%20JOIN%20supe_attachments%20a%20ON%20i.picid%20%3D%20a.aid%0D%0AORDER%20BY%20i.top%20DESC%2C%20i.itemid%20DESC/limit/$mystart,$baseperpage/cachename/$mycachename/cachetime/$mycachetime/tpl/data-!-Thiese Block had cached in dollar_SBLOCK$mycachename-!-loop$_SBLOCK$mycachename$value-!-eval$valuemessage=trim(strip_tags($valuemessage);-!-eval$valuemessage=trim(cutstr($valuemessage,290,1);-!-if$valuetop-!-eval$valuesubject=置顶.$valuetop.$valuesubject;-!-/if-!-if$valuedigest-!-eval$valuesubject.=精华.$valuedigest.;-!-/if-div class=posth2 ahref=title=$valuesubject$valuesubject/a/h2 span class=pmentsem$valuereplynum/em个评论/span div class=clear/div!-if$valuethumbpath-a href=img src=title=$valuea_subjectalt=$valuea_subjectclass=thumb_image/a!-else-a href=img src=title=$valuesubjectalt=$valuesubjectclass=thumb_image/a!-/if-div class=pcontent$valuemessage/div div class=clear/div div class=pmeta#date(Y-m-d,$valuedateline)#/a href=title=$valuename$valuename/a/$valueviewnum浏览/div ahref=title=阅读全文class=readmore阅读全文/a/div!-/loop-!-Navigation begin-div class=page_navi!-翻页输出控制-!-eval$mylistcount=1;-!-block name=categoryparameter=sql/SELECT%20count%28%20itemid%20%29%20AS%20total%20FROM%20%60supe_spaceitems%60/limit/1/cachetime/$basecachetime/cachename/indexcount/tpl/data-!-Index listcount has cached in mylistcount-!-eval$mylistcount=$_SBLOCKindexcount0total;-!-if$mylistcount-!-eval$_SGETaction=index;-!-eval$myurlarr=$_SGET;-!-eval unset($myurlarrpage);-!-eval$_SBLOCKmynews_multip

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论