日期:2014-05-17 浏览次数:20529 次
<?php
define('SUB_DIR','/services');
session_start();
error_reporting(E_ALL ^ E_NOTICE);
if(!isset($_SESSION['adm_name']) || empty($_SESSION['adm_name']))
exit;
//2011-01-30 update
$actions = array('clear','getuser','updategoods','updatesite');
if(isset($_REQUEST['action']))
{
$action = strtolower($_REQUEST['action']);
if(!in_array($action,$actions))
exit;
}
else
exit;
set_time_limit(3600);
if(function_exists('ini_set'))
ini_set('max_execution_time',3600);
require '../core/service/fanwe.service.php';
if($action == 'clear')
{
$fanwe = &FanweService::instance();
//2011-01-30 update
$fanwe->is_admin = true;
$fanwe->is_session = false;
$fanwe->is_user = false;
$fanwe->is_cron = false;
$fanwe->cache_list = array();
$fanwe->initialize();
include_once import('function/cache');
updateCache();
clearDir(FANWE_ROOT.'./public/tpl');
clearDir(FANWE_ROOT.'./admin/Runtime');
clearDir(FANWE_ROOT.'./update/Runtime');
//include FANWE_ROOT.'./ThinkPHP/Vendor/bbs.php';
//BBSAction::getInstance()->updateSetting();
$result = array("status"=>1,"info"=>'清除成功',"data"=>"");
include import('class/json');
$json = new JSON();
die($json->encode($result));
}
//2011-01-30 update
elseif($action == 'updategoods')
{
$fanwe = &FanweService::instance();
$fanwe->is_admin = true;
$fanwe->is_session = false;
$fanwe->is_user = false;
$fanwe->is_cron = false;
$fanwe->cache_list = array('goods');
$fanwe->initialize();
set_time_limit(0);
global $_FANWE;
$begin = isset($_FANWE['request']['begin']) ? intval($_FANWE['request']['begin']) : 0;
$begin = max($begin,0);
if($begin == 0)
{
DB::query("DELETE FROM ".DB::table('cron')." WHERE type='goods'");
DB::query("TRUNCATE TABLE ".DB::table('goods_now'));
DB::query('REPLACE INTO '.DB::table('goods_now').'(id, site_id, site_name, name, city, cate_id, url, click_count, best_count, collect_count,
shop_price, market_price, begin_time, end_time, brief, sort, small_img, big_img, score, is_best, bought, collect_buy, ef_time, post_count, r_sort, cr_sort,
add_time) SELECT g.id, g.site_id, site_name, name, g.city, g.cate_id, url, click_count, best_count, collect_count, shop_price, market_price, begin_time,
g.end_time, brief, g.sort, small_img, big_img, score, is_best, bought, collect_buy, ef_time, post_count, g.r_sort, g.cr_sort, add_time FROM '.DB::table
('goods_key').' AS gk INNER JOIN '.DB::table('goods').' AS g ON g.id = gk.id WHERE g.status = 1 AND gk.end_time > '.TIME_UTC);
DB::query("TRUNCATE TABLE ".DB::table('goods_now_key'));
DB::query('REPLACE INTO '.DB::table('goods_now_key').' SELECT id,site_id,city,cate_id,sort,r_sort,cr_sort,0,0,0,0,end_time FROM '.DB::table
('goods_now'));
DB::query('DELETE FROM '.DB::table('goods_now_match').'
WHERE id NOT IN (SELECT id FROM '.DB::table('goods_now_key').')');
DB::query('INSERT INTO '.DB::table('goods_now_match').'
SELECT gm.id,gm.content
FROM '.DB::table('goods_key').' AS gk
INNER JOIN '.DB::table('goods_match').' AS gm ON gm.id = gk.id
LEFT JOIN '.DB::table('goods_now_match').' AS gnm ON gnm.id = gk.id
WHERE gk.end_time > '.TIME_UTC.' AND gnm.id IS NULL');
$begin = 0;
}
$sort_sites = array();
$res = DB::query('SELECT site_id FROM '.DB::table('goods_key').' WHERE end_time > '.getTodayTime().' GROUP BY site_id');
while($sid = DB::fetch($res))
{
$sort_sites[] = $sid['site_i