1. <?php
    2. /**
    3. * 生成Rss操作
    4. *
    5. * @version $Id: makehtml_rss.php 1 11:17 2010年7月19日Z tianya $
    6. * @package DedeCMS.Administrator
    7. * @copyright Copyright (c) 2007 - 2010, DesDev, Inc.
    8. * @license http://help.dedecms.com/usersguide/license.html
    9. * @link http://www.dedecms.com
    10. */
    11. require_once(dirname(__FILE__)."/config.php");
    12. require_once(DEDEINC."/arc.dateview.class.php");
    13. $isremote = empty($isremote)? 0 : $isremote;
    14. $serviterm = empty($serviterm)? "" : $serviterm;
    15. if(empty($cur_page)) $cur_page = 1;
    16. /*$row = $dsql->GetOne("SELECT id FROM `#@__arctype` WHERE id>'$tid' AND ispart<>2 ORDER BY id ASC LIMIT 0,1;");*/
    17. //更新索引页
    18. if($ac == 1){
    19. $dsql->SetQuery("SELECT count(*) AS cc FROM `#@__archives` GROUP BY FROM_UNIXTIME(pubdate, '%Y-%m')");
    20. $dsql->Execute();
    21. $msgarr = array();
    22. while($row = $dsql->GetArray())
    23. {
    24. $msgarr[] = $row;
    25. }
    26. $maxMsg = count($msgarr);
    27. $pagesize = 31;
    28. $maxpage = ceil($maxMsg/$pagesize);
    29. if($cur_page > $maxpage){
    30. echo "完成所有文件更新!";
    31. }else{
    32. $rv = new RssView(1,$maxMsg,$cur_page,$pagesize,$cur_date = null);
    33. $rssurl = $rv->MakeIndex();
    34. $next_page = $rv->NextPageIndex();
    35. ShowMsg("成功更新".$rssurl.",继续进行操作!","makehtml_date_action.php?&ac=1&cur_page=$next_page",0,100);
    36. }
    37. }
    38. if($ac == 2){
    39. $end = -1;
    40. if($cur_page == 1){
    41. //获取第一个文章的日期
    42. $row = $dsql->GetOne("SELECT FROM_UNIXTIME(pubdate, '%Y-%m') AS d FROM `#@__archives` GROUP BY FROM_UNIXTIME(pubdate, '%Y-%m') order by d");
    43. $cur_date = $row["d"];
    44. }
    45. //获取下一次的更新天数,判断是否结束
    46. $row = $dsql->GetOne("SELECT FROM_UNIXTIME(pubdate, '%Y-%m') AS d FROM `#@__archives` where FROM_UNIXTIME(pubdate, '%Y-%m') > '$cur_date' GROUP BY FROM_UNIXTIME(pubdate, '%Y-%m') order by d");
    47. if(empty($row)){
    48. $end = 1;
    49. }else{
    50. $next_date = $row[d];
    51. }
    52. if(empty($cur_date)){
    53. echo "完成所有文件更新!";exit;
    54. }
    55. $rv = new RssView(2,0,0,0,$cur_date);
    56. $rssurl = $rv->MakeRss();
    57. if($end > 0){
    58. echo "完成所有文件更新!";exit;
    59. }else{
    60. $cur_page = $cur_page + 1;
    61. ShowMsg("成功更新".$rssurl.",继续进行操作!","makehtml_date_action.php?&ac=2&cur_page=$cur_page&cur_date=$next_date",0,100);
    62. }
    63. }