You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
4.4 KiB
108 lines
4.4 KiB
<?php
|
|
|
|
/**
|
|
* ECSHOP 站外JS投放的统计程序
|
|
* ============================================================================
|
|
* * 版权所有 2005-2016 上海商创网络科技有限公司,并保留所有权利。
|
|
* 网站地址: http://www.ecmoban.com;
|
|
* ----------------------------------------------------------------------------
|
|
* 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和
|
|
* 使用;不允许对程序代码以任何形式任何目的的再发布。
|
|
* ============================================================================
|
|
* $Author: liubo $
|
|
* $Id: adsense.php 17217 2011-01-19 06:29:08Z liubo $
|
|
*/
|
|
|
|
define('IN_ECS', true);
|
|
|
|
require(dirname(__FILE__) . '/includes/init.php');
|
|
require_once(ROOT_PATH . 'includes/lib_order.php');
|
|
require_once(ROOT_PATH . 'languages/' .$_CFG['lang']. '/admin/ads.php');
|
|
|
|
/* act操作项的初始化 */
|
|
if (empty($_REQUEST['act']))
|
|
{
|
|
$_REQUEST['act'] = 'list';
|
|
}
|
|
else
|
|
{
|
|
$_REQUEST['act'] = trim($_REQUEST['act']);
|
|
}
|
|
|
|
/*------------------------------------------------------ */
|
|
//-- 站外投放广告的统计
|
|
/*------------------------------------------------------ */
|
|
if ($_REQUEST['act'] == 'list' || $_REQUEST['act'] == 'download')
|
|
{
|
|
admin_priv('ad_manage');
|
|
|
|
/* 获取广告数据 */
|
|
$ads_stats = array();
|
|
$sql = "SELECT a.ad_id, a.ad_name, b.* ".
|
|
"FROM " .$ecs->table('ad'). " AS a, " .$ecs->table('adsense'). " AS b ".
|
|
"WHERE b.from_ad = a.ad_id ORDER by a.ad_name DESC";
|
|
$res = $db->query($sql);
|
|
while ($rows = $db->fetchRow($res))
|
|
{
|
|
/* 获取当前广告所产生的订单总数 */
|
|
$rows['referer']=addslashes($rows['referer']);
|
|
$sql2 = 'SELECT COUNT(order_id) FROM ' .$ecs->table('order_info'). " WHERE from_ad='$rows[ad_id]' AND referer='$rows[referer]'";
|
|
$rows['order_num'] = $db->getOne($sql2);
|
|
|
|
/* 当前广告所产生的已完成的有效订单 */
|
|
$sql3 = "SELECT COUNT(order_id) FROM " .$ecs->table('order_info').
|
|
" WHERE from_ad = '$rows[ad_id]'" .
|
|
" AND referer = '$rows[referer]' ". order_query_sql('finished');
|
|
$rows['order_confirm'] = $db->getOne($sql3);
|
|
|
|
$ads_stats[] = $rows;
|
|
}
|
|
$smarty->assign('ads_stats', $ads_stats);
|
|
|
|
/* 站外JS投放商品的统计数据 */
|
|
$goods_stats = array();
|
|
$goods_sql = "SELECT from_ad, referer, clicks FROM " .$ecs->table('adsense').
|
|
" WHERE from_ad = '-1' ORDER by referer DESC";
|
|
$goods_res = $db->query($goods_sql);
|
|
while ($rows2 = $db->fetchRow($goods_res))
|
|
{
|
|
/* 获取当前广告所产生的订单总数 */
|
|
$rows2['referer']=addslashes($rows2['referer']);
|
|
$rows2['order_num'] = $db->getOne("SELECT COUNT(order_id) FROM " .$ecs->table('order_info'). " WHERE referer='$rows2[referer]'");
|
|
|
|
/* 当前广告所产生的已完成的有效订单 */
|
|
|
|
$sql = "SELECT COUNT(order_id) FROM " .$ecs->table('order_info').
|
|
" WHERE referer='$rows2[referer]'" . order_query_sql('finished');
|
|
$rows2['order_confirm'] = $db->getOne($sql);
|
|
|
|
$rows2['ad_name'] = $_LANG['adsense_js_goods'];
|
|
$goods_stats[] = $rows2;
|
|
}
|
|
if ($_REQUEST['act'] == 'download')
|
|
{
|
|
header("Content-type: application/vnd.ms-excel; charset=utf-8");
|
|
header("Content-Disposition: attachment; filename=ad_statistics.xls");
|
|
$data = "$_LANG[adsense_name]\t$_LANG[cleck_referer]\t$_LANG[click_count]\t$_LANG[confirm_order]\t$_LANG[gen_order_amount]\n";
|
|
$res = array_merge($goods_stats, $ads_stats);
|
|
foreach ($res AS $row)
|
|
{
|
|
$data .= "$row[ad_name]\t$row[referer]\t$row[clicks]\t$row[order_confirm]\t$row[order_num]\n";
|
|
}
|
|
echo ecs_iconv(EC_CHARSET, 'GB2312', $data);
|
|
exit;
|
|
}
|
|
$smarty->assign('goods_stats', $goods_stats);
|
|
|
|
/* 赋值给模板 */
|
|
$smarty->assign('action_link', array('href' => 'ads.php?act=list', 'text' => $_LANG['ad_list']));
|
|
$smarty->assign('action_link2', array('href' => 'adsense.php?act=download', 'text' => $_LANG['download_ad_statistics']));
|
|
$smarty->assign('ur_here', $_LANG['adsense_js_stats']);
|
|
$smarty->assign('lang', $_LANG);
|
|
|
|
/* 显示页面 */
|
|
assign_query_info();
|
|
$smarty->display('adsense.htm');
|
|
}
|
|
|
|
?>
|