Server : Apache
System : Linux iZ2vcgyutqttsd1p850kl8Z 3.10.0-1160.92.1.el7.x86_64 #1 SMP Tue Jun 20 11:48:01 UTC 2023 x86_64
User : www ( 1000)
PHP Version : 5.6.40
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Directory :  /www/wwwroot/saimikebio.com/mobile/ecshopjcw/
Upload File :
Current Directory [ Writeable ] Root Directory [ Writeable ]


Current File : /www/wwwroot/saimikebio.com/mobile/ecshopjcw/guest_stats.php
<?php



/**

 * ECSHOP 客户统计

 * ============================================================================

 * * 版权所有 2005-2012 上海商派网络科技有限公司,并保留所有权利。

 * 网站地址: http://www.ecshop.com;

 * ----------------------------------------------------------------------------

 * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和

 * 使用;不允许对程序代码以任何形式任何目的的再发布。

 * ============================================================================

 * $Author: liubo $

 * $Id: guest_stats.php 17217 2011-01-19 06:29:08Z liubo $

*/



define('IN_ECTOUCH', true);



require(dirname(__FILE__) . '/includes/init.php');

require_once(ROOT_PATH . 'include/lib_order.php');

require_once(ROOT_PATH . 'lang/' .$_CFG['lang']. '/admin/statistic.php');



/* act操作项的初始化 */

if (empty($_REQUEST['act']))

{

    $_REQUEST['act'] = 'list';

}

else

{

    $_REQUEST['act'] = trim($_REQUEST['act']);

}



/*------------------------------------------------------ */

//-- 客户统计列表

/*------------------------------------------------------ */

if ($_REQUEST['act'] == 'list')

{

    /* 权限判断 */

    admin_priv('client_flow_stats');



    /* 取得会员总数 */

    $users      =init_users();

    $sql = "SELECT COUNT(*) FROM " . $ecs->table("users");

    $res = $db->getCol($sql);

    $user_num   = $res[0];





    /* 计算订单各种费用之和的语句 */

    $total_fee = " SUM(" . order_amount_field() . ") AS turnover ";



    /* 有过订单的会员数 */

    $sql = 'SELECT COUNT(DISTINCT user_id) FROM ' .$ecs->table('order_info').

           " WHERE user_id > 0 " . order_query_sql('finished');

    $have_order_usernum = $db->getOne($sql);



    /* 会员订单总数和订单总购物额 */

    $user_all_order = array();

    $sql = "SELECT COUNT(*) AS order_num, " . $total_fee.

           "FROM " .$ecs->table('order_info').

           " WHERE user_id > 0 " . order_query_sql('finished');

    $user_all_order = $db->getRow($sql);

    $user_all_order['turnover'] = floatval($user_all_order['turnover']);



    /* 匿名会员订单总数和总购物额 */

    $guest_all_order = array();

    $sql = "SELECT COUNT(*) AS order_num, " . $total_fee.

           "FROM " .$ecs->table('order_info').

           " WHERE user_id = 0 " . order_query_sql('finished');

    $guest_all_order = $db->getRow($sql);



    /* 匿名会员平均订单额: 购物总额/订单数 */

    $guest_order_amount = ($guest_all_order['order_num'] > 0) ? floatval($guest_all_order['turnover'] / $guest_all_order['order_num']) : '0.00';



    $_GET['flag'] = isset($_GET['flag']) ? 'download' : '';

    if($_GET['flag'] == 'download')

    {

        $filename = ecs_iconv(EC_CHARSET, 'GB2312', $_LANG['guest_statistics']);



        header("Content-type: application/vnd.ms-excel; charset=utf-8");

        header("Content-Disposition: attachment; filename=$filename.xls");



        /* 生成会员购买率 */

        $data  = $_LANG['percent_buy_member'] . "\t\n";

        $data .= $_LANG['member_count'] . "\t" . $_LANG['order_member_count'] . "\t" .

                $_LANG['member_order_count'] . "\t" . $_LANG['percent_buy_member'] . "\n";



        $data .= $user_num . "\t" . $have_order_usernum . "\t" .

                $user_all_order['order_num'] . "\t" . sprintf("%0.2f", ($user_num > 0 ? $have_order_usernum / $user_num : 0) * 100) . "\n\n";



        /* 每会员平均订单数及购物额 */

        $data .= $_LANG['order_turnover_peruser'] . "\t\n";



        $data .= $_LANG['member_sum'] . "\t" . $_LANG['average_member_order'] . "\t" .

                $_LANG['member_order_sum'] . "\n";



        $ave_user_ordernum = $user_num > 0 ? sprintf("%0.2f", $user_all_order['order_num'] / $user_num) : 0;

        $ave_user_turnover = $user_num > 0 ? price_format($user_all_order['turnover'] / $user_num) : 0;



        $data .= price_format($user_all_order['turnover']) . "\t" . $ave_user_ordernum . "\t" . $ave_user_turnover . "\n\n";



        /* 每会员平均订单数及购物额 */

        $data .= $_LANG['order_turnover_percus'] . "\t\n";

        $data .= $_LANG['guest_member_orderamount'] . "\t" . $_LANG['guest_member_ordercount'] . "\t" .

                $_LANG['guest_order_sum'] . "\n";



        $order_num = $guest_all_order['order_num'] > 0 ? price_format($guest_all_order['turnover'] / $guest_all_order['order_num']) : 0;

        $data .= price_format($guest_all_order['turnover']) . "\t" . $guest_all_order['order_num'] . "\t" .

                $order_num;



        echo ecs_iconv(EC_CHARSET, 'GB2312', $data) . "\t";

        exit;

    }



    /* 赋值到模板 */

    $smarty->assign('user_num',            $user_num);                    // 会员总数

    $smarty->assign('have_order_usernum',  $have_order_usernum);          // 有过订单的会员数

    $smarty->assign('user_order_turnover', $user_all_order['order_num']); // 会员总订单数

    $smarty->assign('user_all_turnover',   price_format($user_all_order['turnover']));  //会员购物总额

    $smarty->assign('guest_all_turnover',  price_format($guest_all_order['turnover'])); //匿名会员购物总额

    $smarty->assign('guest_order_num',     $guest_all_order['order_num']);              //匿名会员订单总数



    /* 每会员订单数 */

    $smarty->assign('ave_user_ordernum',  $user_num > 0 ? sprintf("%0.2f", $user_all_order['order_num'] / $user_num) : 0);



    /* 每会员购物额 */

    $smarty->assign('ave_user_turnover',  $user_num > 0 ? price_format($user_all_order['turnover'] / $user_num) : 0);



    /* 注册会员购买率 */

    $smarty->assign('user_ratio', sprintf("%0.2f", ($user_num > 0 ? $have_order_usernum / $user_num : 0) * 100));



     /* 匿名会员平均订单额 */

    $smarty->assign('guest_order_amount', $guest_all_order['order_num'] > 0 ? price_format($guest_all_order['turnover'] / $guest_all_order['order_num']) : 0);



    $smarty->assign('all_order',          $user_all_order);    //所有订单总数以及所有购物总额

    $smarty->assign('ur_here',            $_LANG['report_guest']);

    $smarty->assign('lang',               $_LANG);



    $smarty->assign('action_link',  array('text' => $_LANG['down_guest_stats'],

          'href'=>'guest_stats.php?flag=download'));



    assign_query_info();

    $smarty->display('guest_stats.htm');

}



?>