Example #1
0
//ajax请求
if (isset($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") {
    if ($ajaxMethod == 'showChart') {
        $detail = MailStatistics::getRefuseForHoursData($start_date, $end_date);
        $list = array();
        foreach ($detail as $item) {
            $list['DAYS'][] = $item['MAIL_TIME'] . str_pad($item['HOURS'], 2, '0', STR_PAD_LEFT);
            $list['NUMS'][] = $item['NUM'];
        }
        $res = array();
        $res['list'] = $list;
        $res = json_encode($res);
        exit($res);
    }
    if ($ajaxMethod == 'showImg') {
        $data = MailStatistics::getRefuseForHours($start_date, $end_date, $width, $height);
        $jpg = $data[0]['IMAGE'];
        if (!empty($jpg)) {
            $filename = 'refuseForHours.png';
            $file = file_put_contents(ADMIN_BASE_RIMAGE . $filename, $jpg);
            //打开文件准备写入
            $imgurl = ADMIN_URL_RIMAGE . $filename . '?' . microtime(true);
            $img = "<center><img src=\"{$imgurl}\"></center>";
        } else {
            $img = "图片加载失败";
        }
        $res = array();
        $res['img'] = $img;
        $res = json_encode($res);
        exit($res);
    }
Example #2
0
<?php

/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2015/7/13
 * Time: 16:29
 * mail_login汇总
 */
require '../../include/init.inc.php';
$start_date = $end_date = "";
$_POST['start_date'] = empty($_POST['start_date']) ? date("Y-m-d", time() - 86400) : $_POST['start_date'];
$_POST['end_date'] = empty($_POST['end_date']) ? date("Y-m-d", time() + 86400) : $_POST['end_date'];
extract($_POST, EXTR_IF_EXISTS);
//获取每天攻防信息
$list = MailStatistics::getMailLogin($start_date, $end_date);
$mailLoginRt = array();
foreach ($list as $item) {
    $mailLoginRt['MAIL_TIME'][] = $item['MAIL_TIME'];
    $mailLoginRt['LGOIN_NUM'][] = $item['LGOIN_NUM'];
    $mailLoginRt['LGOIN_FAILED_NUM'][] = $item['LGOIN_FAILED_NUM'];
    $mailLoginRt['SENT_MB'][] = $item['SENT_MB'];
    $mailLoginRt['RCVD_KB'][] = $item['RCVD_KB'];
    $mailLoginRt['RTIME'][] = $item['RTIME'];
}
$mailLoginRt = json_encode($mailLoginRt);
Template::assign('mailLoginRt', $mailLoginRt);
Template::assign('_POST', $_POST);
Template::display('netshow/mail/mailLogin.tpl');
Example #3
0
        exit($res);
    }
} else {
    $topNMail = array();
    //邮箱地址
    $return = MailStatistics::getRecTopNMailCount($start_date, $end_date, $mail);
    $row_count = $return[0]['NUM'];
    //导出功能
    if ($command == 'export') {
        $header = array('MAIL_TO' => '接收邮件域名', 'MAIL_FROM_NUM' => '发送邮件用户数', 'MAIL_USER' => '接收邮件用户数', 'NUM' => '接收邮件数', 'PERC' => '邮件数占比(%)');
        $data = MailStatistics::getRecTopNMail($start_date, $end_date, $mail, 0, $row_count);
        $csv = new LibExportCsv($header, $data);
        $csv->export();
        exit;
    }
    $page_size = 10;
    $page_no = $page_no < 1 ? 1 : $page_no;
    $total_page = $row_count % $page_size == 0 ? $row_count / $page_size : ceil($row_count / $page_size);
    $total_page = $total_page < 1 ? 1 : $total_page;
    $page_no = $page_no > $total_page ? $total_page : $page_no;
    $start = ($page_no - 1) * $page_size;
    $topNMail = MailStatistics::getRecTopNMail($start_date, $end_date, $mail, $start, $page_size);
    foreach ($topNMail as &$item) {
        $item['PERC'] = floatval($item['PERC']);
    }
    $page_html = Pagination::showPager("recTopNMail.php?start_date={$start_date}&end_date={$end_date}", $page_no, 10, $row_count);
    Template::assign('topNMail', $topNMail);
    Template::assign('page_html', $page_html);
    Template::assign('_GET', $_GET);
    Template::display('netshow/mail/recTopNMail.tpl');
}
//ajax请求
if (isset($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") {
    if ($ajaxMethod == 'showChart') {
        $detail = MailStatistics::getSendReceiveForHoursData($start_date, $end_date);
        $list = array();
        foreach ($detail as $item) {
            $list['DAYS'][] = $item['MAIL_TIME'] . str_pad($item['HOURS'], 2, '0', STR_PAD_LEFT);
            $list['NUMS'][] = $item['NUM'];
        }
        $res = array();
        $res['list'] = $list;
        $res = json_encode($res);
        exit($res);
    }
    if ($ajaxMethod == 'showImg') {
        $data = MailStatistics::getSendReceiveForHours($start_date, $end_date, $width, $height);
        $jpg = $data[0]['IMAGE'];
        if (!empty($jpg)) {
            $filename = 'sendReceiveForHours.png';
            $file = file_put_contents(ADMIN_BASE_RIMAGE . $filename, $jpg);
            //打开文件准备写入
            $imgurl = ADMIN_URL_RIMAGE . $filename . '?' . microtime(true);
            $img = "<center><img src=\"{$imgurl}\"></center>";
        } else {
            $img = "图片加载失败";
        }
        $res = array();
        $res['img'] = $img;
        $res = json_encode($res);
        exit($res);
    }
$_GET['start_date'] = empty($_GET['start_date']) ? date("Y-m-d", time() - 86400) : $_GET['start_date'];
$_GET['end_date'] = empty($_GET['end_date']) ? date("Y-m-d", time() + 86400) : $_GET['end_date'];
$_GET['ajaxMethod'] = empty($_GET['ajaxMethod']) ? '' : $_GET['ajaxMethod'];
extract($_GET, EXTR_IF_EXISTS);
if (isset($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") {
} else {
    $mail = array();
    //邮箱地址
    $return = MailStatistics::getQQmailAccountNotExistCount($start_date, $end_date);
    $row_count = $return[0]['NUM'];
    //导出功能
    if ($command == 'export') {
        $header = array('MAIL_TO' => '接收的邮件地址', 'NUM' => '发送的次数', 'FIRST_TIME' => '首次发送日期', 'LAST_TIME' => '最后发送日期', 'REP_DATE' => '统计时间');
        $data = MailStatistics::getQQmailAccountNotExist($start_date, $end_date, 0, $row_count);
        $csv = new LibExportCsv($header, $data);
        $csv->export();
        exit;
    }
    $page_size = 10;
    $page_no = $page_no < 1 ? 1 : $page_no;
    $total_page = $row_count % $page_size == 0 ? $row_count / $page_size : ceil($row_count / $page_size);
    $total_page = $total_page < 1 ? 1 : $total_page;
    $page_no = $page_no > $total_page ? $total_page : $page_no;
    $start = ($page_no - 1) * $page_size;
    $mail = MailStatistics::getQQmailAccountNotExist($start_date, $end_date, $start, $page_size);
    $page_html = Pagination::showPager("qqMailAccountNotExist.php?start_date={$start_date}&end_date={$end_date}", $page_no, $page_size, $row_count);
    Template::assign('mail', $mail);
    Template::assign('page_html', $page_html);
    Template::assign('_GET', $_GET);
    Template::display('netshow/mail/qqMailAccountNotExist.tpl');
}
Example #6
0
 * 账号活跃度统计
 */
require '../../include/init.inc.php';
$page_no = $page_no1 = $start_date = $end_date = $command = "";
$_GET['start_date'] = empty($_GET['start_date']) ? date("Y-m-d", time() - 86400) : $_GET['start_date'];
$_GET['end_date'] = empty($_GET['end_date']) ? date("Y-m-d", time() + 86400) : $_GET['end_date'];
$_GET['command'] = empty($_GET['command']) ? '' : $_GET['command'];
extract($_GET, EXTR_IF_EXISTS);
$unActivityUser = array();
//非活跃用户
$return = MailStatistics::getAccountUnActivityCount($start_date, $end_date);
$row_count = $return[0]['NUM'];
if ($command == 'export') {
    $header = array('RN' => 'ID', 'MAIL_ACCOUNT' => 'Mail帐号', 'LOGIN_NUM' => '登录次数', 'SENT_NUM' => '发送次数', 'RCVD_NUM' => '接收次数', 'REJECT_NUM' => '拒绝次数');
    $data = MailStatistics::getAccountUnActivity($start_date, $end_date, 0, $row_count);
    $csv = new LibExportCsv($header, $data);
    $csv->export();
    exit;
}
$page_size = 15;
$page_no = $page_no < 1 ? 1 : $page_no;
$total_page = $row_count % $page_size == 0 ? $row_count / $page_size : ceil($row_count / $page_size);
$total_page = $total_page < 1 ? 1 : $total_page;
$page_no = $page_no > $total_page ? $total_page : $page_no;
$start = ($page_no - 1) * $page_size;
$unActivityUser = MailStatistics::getAccountUnActivity($start_date, $end_date, $start, $page_size);
$page_html = Pagination::showPager("accountUnActivity.php?start_date={$start_date}&end_date={$end_date}", $page_no, 15, $row_count);
Template::assign('unActivityUser', $unActivityUser);
Template::assign('page_html', $page_html);
Template::assign('_GET', $_GET);
Template::display('netshow/mail/accountUnActivity.tpl');
Example #7
0
require_once 'classes/class.browser.php';
require_once 'classes/class.button.php';
require_once 'classes/class.mailstatistics.php';
set_error_handler('button_output_anyway', E_ALL & ~E_NOTICE & ~E_WARNING);
$OLD_DISPLAY_ERRORS = ini_get('display_errors');
ini_set('display_errors', 0);
$button_sent = false;
$lang = verify_param(isset($_GET['language']) ? 'language' : 'lang', "/^[\\w-]{2,5}\$/", '');
$documentRoot = $_SERVER['DOCUMENT_ROOT'];
$image = verify_param('bim', "/^[\\w\\.]+\$/");
if (empty($image)) {
    $image = verify_param('image', "/^[\\w\\.]+\$/", 'webim');
}
if (empty($image)) {
    $image = 'webim';
}
$departmentKey = verify_param('departmentkey', "/^\\w+\$/");
@MailStatistics::sendStatsIfNeeded(MAIL_STATISTICS_FILE, MAIL_STATISTICS_HOUR);
$button_sent = Button::sendButton($image, $departmentKey, $lang, $_SERVER['DOCUMENT_ROOT'] . WEBIM_ROOT);
restore_error_handler();
ini_set('display_errors', $OLD_DISPLAY_ERRORS);
exit;
function button_output_anyway($errno, $errstr, $errfile, $errline, $errcontext)
{
    global $button_sent, $image, $lang, $departmentKey;
    if ($button_sent) {
        return;
    }
    Button::sendButton($image, $departmentKey, $lang, $_SERVER['DOCUMENT_ROOT'] . WEBIM_ROOT, 'off');
    die(1);
}
<?php

/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2015/7/13
 * Time: 16:29
 * 登录失败TOP账号
 */
require '../../include/init.inc.php';
$page_no = $start_date = $end_date = $top = "";
$_GET['start_date'] = empty($_GET['start_date']) ? date("Y-m-d", time() - 86400) : $_GET['start_date'];
$_GET['end_date'] = empty($_GET['end_date']) ? date("Y-m-d", time() + 86400) : $_GET['end_date'];
$_GET['top'] = empty($_GET['top']) ? 5 : intval($_GET['top']);
extract($_GET, EXTR_IF_EXISTS);
$topAccounts = array();
$return = MailStatistics::getFailLoginTopAccountCount($start_date, $end_date, $top);
$row_count = $return[0]['NUM'];
$page_size = 15;
$page_no = $page_no < 1 ? 1 : $page_no;
$total_page = $row_count % $page_size == 0 ? $row_count / $page_size : ceil($row_count / $page_size);
$total_page = $total_page < 1 ? 1 : $total_page;
$page_no = $page_no > $total_page ? $total_page : $page_no;
$start = ($page_no - 1) * $page_size;
$topAccounts = MailStatistics::getFailLoginTopAccount($start_date, $end_date, $top, $start, $page_size);
$page_html = Pagination::showPager("failLoginTopAccount.php?start_date={$start_date}&end_date={$end_date}&top={$top}", $page_no, 15, $row_count);
Template::assign('topAccounts', $topAccounts);
Template::assign('page_html', $page_html);
Template::assign('_GET', $_GET);
Template::display('netshow/mail/failLoginTopAccount.tpl');
//ajax请求
if (isset($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") {
    if ($ajaxMethod == 'showChart') {
        $detail = MailStatistics::getLoginCountForHoursData($start_date, $end_date);
        $list = array();
        foreach ($detail as $item) {
            $list['DAYS'][] = $item['MAIL_TIME'] . str_pad($item['HOURS'], 2, '0', STR_PAD_LEFT);
            $list['NUMS'][] = $item['NUM'];
        }
        $res = array();
        $res['list'] = $list;
        $res = json_encode($res);
        exit($res);
    }
    if ($ajaxMethod == 'showImg') {
        $data = MailStatistics::getLoginCountForHours($start_date, $end_date, $width, $height);
        $jpg = $data[0]['IMAGE'];
        if (!empty($jpg)) {
            $filename = 'LoginCountForHours.png';
            $file = file_put_contents(ADMIN_BASE_RIMAGE . $filename, $jpg);
            //打开文件准备写入
            $imgurl = ADMIN_URL_RIMAGE . $filename . '?' . microtime(true);
            $img = "<center><img src=\"{$imgurl}\"></center>";
        } else {
            $img = "图片加载失败";
        }
        $res = array();
        $res['img'] = $img;
        $res = json_encode($res);
        exit($res);
    }