Phppgads 2.0.7 > PhpPgAds 2.0.7 / Admin / Graph History.php

Questions? Need Help? Want to share? » PHP Forum
Script Name:
Phppgads 2.0.7

Download:
phppgads-2.0.7.zip

Category:
Ad Management

Archive Content:

PhpPgAds 2.0.7

PhpPgAds 2.0.7 > Admin

PhpPgAds 2.0.7 > Admin > Report Plugins

PhpPgAds 2.0.7 > Admin

PhpPgAds 2.0.7 > Admin > Images

PhpPgAds 2.0.7 > Admin > Images > Ltr

PhpPgAds 2.0.7 > Admin > Images

PhpPgAds 2.0.7 > Admin > Images > Flags

PhpPgAds 2.0.7 > Admin > Images

PhpPgAds 2.0.7 > Admin > Images > Rtl

PhpPgAds 2.0.7 > Admin > Images

PhpPgAds 2.0.7 > Admin

PhpPgAds 2.0.7 > Admin > Templates

PhpPgAds 2.0.7

PhpPgAds 2.0.7 > Cache

PhpPgAds 2.0.7 > Client

PhpPgAds 2.0.7 > Language

PhpPgAds 2.0.7 > Language > Brazilian Portuguese

PhpPgAds 2.0.7 > Language > Chinese Big5

PhpPgAds 2.0.7 > Language > Chinese Gb2312

PhpPgAds 2.0.7 > Language > Dutch

PhpPgAds 2.0.7 > Language > English

PhpPgAds 2.0.7 > Language > English Us

PhpPgAds 2.0.7 > Language > French

PhpPgAds 2.0.7 > Language > German

PhpPgAds 2.0.7 > Language > Hebrew

PhpPgAds 2.0.7 > Language > Hungarian

PhpPgAds 2.0.7 > Language > Indonesian

PhpPgAds 2.0.7 > Language > Italian

PhpPgAds 2.0.7 > Language > Korean

PhpPgAds 2.0.7 > Language > Polish

PhpPgAds 2.0.7 > Language > Portuguese

PhpPgAds 2.0.7 > Language > Russian Cp1251

PhpPgAds 2.0.7 > Language > Russian Koi8r

PhpPgAds 2.0.7 > Language > Spanish

PhpPgAds 2.0.7 > Language > Turkish

PhpPgAds 2.0.7 > Libraries

PhpPgAds 2.0.7 > Libraries > Defaults

PhpPgAds 2.0.7 > Libraries

PhpPgAds 2.0.7 > Libraries > Layerstyles

PhpPgAds 2.0.7 > Libraries > Layerstyles > Cursor

PhpPgAds 2.0.7 > Libraries > Layerstyles > Floater

PhpPgAds 2.0.7 > Libraries > Layerstyles > Geocities

PhpPgAds 2.0.7 > Libraries > Layerstyles > Geocities > Images

PhpPgAds 2.0.7 > Libraries > Layerstyles > Geocities

PhpPgAds 2.0.7 > Libraries > Layerstyles > Simple

PhpPgAds 2.0.7 > Libraries > Layerstyles > Simple > Images

PhpPgAds 2.0.7 > Libraries > Layerstyles > Simple

PhpPgAds 2.0.7 > Libraries

PhpPgAds 2.0.7 > Libraries > Deliverycache

PhpPgAds 2.0.7 > Libraries > Geotargeting

PhpPgAds 2.0.7 > Libraries > Resources

PhpPgAds 2.0.7 > Maintenance

PhpPgAds 2.0.7 > Misc

PhpPgAds 2.0.7 > Misc > Documentation

PhpPgAds 2.0.7 > Misc

PhpPgAds 2.0.7 > Misc > Fakecron

PhpPgAds 2.0.7 > Misc > Revisions

PhpPgAds 2.0.7 > Misc > Samples

PhpPgAds 2.0.7 > Misc > Samples > Xmlrpc

PhpPgAds 2.0.7 > Misc > Samples > Xmlrpc > Php

Graph History.php:


<?php // $Revision: 2.0.2.3 $

/************************************************************************/
/* phpPgAds                                                             */
/* ========                                                             */
/*                                                                      */
/* Copyright (c) 2001-2005 by the phpPgAds developers                   */
/* For more information visit: http://phppgads.sourceforge.net          */
/*                                                                      */
/* This program is free software. You can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation; either version 2 of the License.       */
/************************************************************************/



require ("config.php");


// Register input variables
phpAds_registerGlobal ('period',  'start',  'limit',  'source');


/*********************************************************/
/* Prepare for current selection                         */
/*********************************************************/

// Bannerid
if ($bannerid != '')
{
    
$where[] = 'bannerid = '.$bannerid;
    
    if (
$zoneid != '')
    {
        
$where[] = "zoneid = ".$zoneid;
    }
}

// Campaignid
elseif ($campaignid != '')
{
    
$idresult phpAds_dbQuery ("
        SELECT
            bannerid
        FROM
            "
.$phpAds_config['tbl_banners']."
        WHERE
            clientid = '$campaignid'
    "
);
    
    if (
phpAds_dbNumRows($idresult) > 0)
        while (
$row phpAds_dbFetchArray($idresult))
            
$bannerids[] = "bannerid = ".$row['bannerid'];
    
    
$where[] = "(".implode(' OR ',  $bannerids).")";
}

// Clientid
elseif ($clientid != '')
{
    
$idresult phpAds_dbQuery ("
        SELECT
            b.bannerid
        FROM
            "
.$phpAds_config['tbl_banners']." AS b,
            "
.$phpAds_config['tbl_clients']." AS c
        WHERE
            c.parent = $clientid AND
            c.clientid = b.clientid
    "
);
    
    if (
phpAds_dbNumRows($idresult) > 0)
        while (
$row phpAds_dbFetchArray($idresult))
            
$bannerids[] = "bannerid = ".$row['bannerid'];
    
    
$where[] = "(".implode(' OR ',  $bannerids).")";
}

// Zoneid
elseif ($zoneid != '')
{
    
$where[] = "zoneid = ".$zoneid;
}

// Affiliateid
elseif ($affiliateid != '')
{
    
$idresult phpAds_dbQuery (
        SELECT
            zoneid
        FROM
            "
.$phpAds_config['tbl_zones']."
        WHERE
            affiliateid = '"
.$affiliateid."'
    "
);
    
    if (
phpAds_dbNumRows($idresult) > 0)
        while (
$row phpAds_dbFetchArray($idresult))
            
$zoneids[] = "zoneid = ".$row['zoneid'];
    
    
$where[] = "(".implode(' OR ',  $zoneids).")";
}

// Source
if ($source != '-')
{
    
$where[] = "source = '".$source."'";
}


// Convert to SQL query
if (isset($where))
    
$where implode (' AND ',  $where);



/*********************************************************/
/* Prepare for selected period                           */
/*********************************************************/

if ($period == 'd')
{
    
$formatted   $date_format;
    
$unformatted "DDMMYYYY";
    
$returnlimit $limit;
    
    
$begin_timestamp mktime(0,  0,  0,  date('m'),  date('d') - $limit $start,  date('Y'));
    
$end_timestamp     mktime(0,  0,  0,  date('m'),  date('d') + $start,  date('Y'));
}

if (
$period == 'w')
{
    
$formatted   $date_format;
    
$unformatted "DDMMYYYY";
    
$returnlimit $limit 7;
    
    
$shift date('w') - ($phpAds_config['begin_of_week'] ? - (date('w') == 0) : 0);
    
$begin_timestamp mktime(0,  0,  0,  date('m'),  date('d') - $shift - (* ($limit $start)),  date('Y'));
    
$end_timestamp   mktime(0,  0,  0,  date('m'),  date('d') - $shift - ($start),  date('Y'));
}

if (
$period == 'm')
{
    
$formatted   = array(str_replace('%m',  'MM',  str_replace('%Y',  'YYYY',  $month_format)),  $month_format);
    
$unformatted "MMYYY";
    
$returnlimit $limit;
    
    
$begin_timestamp mktime(0,  0,  0,  date('m') - $limit $start,  1,  date('Y'));
    
$end_timestamp   mktime(0,  0,  0,  date('m') + $start,  1,  date('Y'));
}



/*********************************************************/
/* Get statistics for selected period                    */
/*********************************************************/

if ($phpAds_config['compact_stats']) 
{
    
// Get stats for selected period
    
$begin date('Y-m-d',  $begin_timestamp);
    
$end   date('Y-m-d',  $end_timestamp);
    
    
$result phpAds_dbQuery("
        SELECT
            sum(views) AS sum_views,
            sum(clicks) AS sum_clicks,
            DATE_FORMAT(day,  '"
.$formatted[0]."') AS date,
            DATE_FORMAT(day,  '"
.$unformatted."') AS date_u
        FROM
            "
.$phpAds_config['tbl_adstats']."
        WHERE
            day >= '$begin' AND day < '$end'
            "
.(isset($where) ? 'AND '.$where '')."
        GROUP BY
            date,  date_u
        ORDER BY
            date_u DESC
        LIMIT 
            $returnlimit
    "
);
    
    while (
$row phpAds_dbFetchArray($result))
    {
        
$stats[$row['date']]['sum_views'] = $row['sum_views'];
        
$stats[$row['date']]['sum_clicks'] = $row['sum_clicks'];
    }
}
else
{
    
// Get stats for selected period
    
$begin date('Y-m-d H:i:s',  $begin_timestamp);
    
$end   date('Y-m-d H:i:s',  $end_timestamp);
    
    
$result phpAds_dbQuery("
        SELECT
            COUNT(*) AS sum_views,
            DATE_FORMAT(t_stamp::date,  '"
.$formatted[0]."') AS date,
            DATE_FORMAT(t_stamp::date,  '"
.$unformatted."') AS date_u
        FROM
            "
.$phpAds_config['tbl_adviews']."
        WHERE
            t_stamp >= '$begin' AND t_stamp < '$end'
            "
.(isset($where) ? 'AND '.$where '')."
        GROUP BY
            date,  date_u
        ORDER BY
            date_u DESC
        LIMIT 
            $returnlimit
    "
);
    
    while (
$row phpAds_dbFetchArray($result))
    {
        
$stats[$row['date']]['sum_views'] = $row['sum_views'];
        
$stats[$row['date']]['sum_clicks'] = '0';
    }
    
    
    
$result phpAds_dbQuery("
        SELECT
            COUNT(*) AS sum_clicks,
            DATE_FORMAT(t_stamp::date,  '"
.$formatted[0]."') AS date,
            DATE_FORMAT(t_stamp::date,  '"
.$unformatted."') AS date_u
        FROM
            "
.$phpAds_config['tbl_adclicks']."
        WHERE
            t_stamp >= '$begin' AND t_stamp < '$end'
            "
.(isset($where) ? 'AND '.$where '')."
        GROUP BY
            date,  date_u
        ORDER BY
            date_u DESC
        LIMIT 
            $returnlimit
    "
);
    
    while (
$row phpAds_dbFetchArray($result))
    {
        
$stats[$row['date']]['sum_clicks'] = $row['sum_clicks'];
    }
}




/*********************************************************/
/* Prepare data for graph                                */
/*********************************************************/

if (isset ($GLOBALS['phpAds_CharSet']) && $GLOBALS['phpAds_CharSet'] != '')
    
$text=array(
        
'value1' => 'AdViews',
        
'value2' => 'AdClicks');
else
    
$text=array(
        
'value1' => $GLOBALS['strViews'],
        
'value2' => $GLOBALS['strClicks']);

if (
$period == 'd' || $period == 'm')
{
    for (
$d=0;$d<$limit;$d++)
    {
        switch (
$period)
        {
            case 
'm':    $timestamp mktime (0,  0,  0,  date('m') - $d $start,  1,  date('Y'));
                        break;
                    
            case 
'd':    $timestamp mktime (0,  0,  0,  date('m'),  date('d') - $d $start,  date('Y'));
                        break;
        }
        
        
$key strftime ($formatted[1],  $timestamp);
        if (isset(
$stats[$key]))
        {
            
$items[$d]['value1'] = isset($stats[$key]['sum_views']) ? $stats[$key]['sum_views'] : 0;
            
$items[$d]['value2'] = isset($stats[$key]['sum_clicks']) ? $stats[$key]['sum_clicks'] : 0;
            
$items[$d]['text']   = $key;
        }
        else
        {
            
$items[$d]['value1'] = 0;
            
$items[$d]['value2'] = 0;
            
$items[$d]['text']   = $key;
        }
    }
}


if (
$period == 'w')
{
    
$days 0;
    
    for (
$d=0;$d<$limit;$d++)
    {
        
$totalweekviews 0;
        
$totalweekclicks 0;
        
        
$shift date('w') - ($phpAds_config['begin_of_week'] ? - (date('w') == 0) : 0);
        
$week_timestamp mktime(0,  0,  0,  date('m'),  date('d') - $shift - (* ($d $start)),  date('Y'));
        
$week_formatted strftime("%V") != '' strftime ($weekiso_format,  $week_timestamp + ($phpAds_config['begin_of_week'] ? : (60*60*24))) : 
                                                   
strftime ($week_format,  $week_timestamp + ($phpAds_config['begin_of_week'] ? : (60*60*24)));
        
        for (
$i 0$i 7$i++)
        {
            
$day_timestamp $week_timestamp + ($i * (60 60 24));
            
$key strftime ($formatted[1],  $week_timestamp + ($i * (60 60 24)));
            
            if (isset(
$stats[$key]))
            {
                
$totalweekviews  += isset($stats[$key]['sum_views']) ? $stats[$key]['sum_views'] : 0;
                
$totalweekclicks += isset($stats[$key]['sum_clicks']) ? $stats[$key]['sum_clicks'] : 0;
                
$days++;
            }
        }
        
        
$items[$d]['value1'] = $totalweekviews;
        
$items[$d]['value2'] = $totalweekclicks;
        
$items[$d]['text']   = $week_formatted;
    }
}


// Build the graph
include('lib-graph.inc.php');

?>


Other Ad Management Scripts:

WebMaster Resources Home

©RingsWorld.com