| <?php | |
| require_once("/home/data/httpd/eclipse-php-classes/system/app.class.php"); | |
| require_once("/home/data/httpd/eclipse-php-classes/people/ldapperson.class.php"); | |
| require_once("/home/data/httpd/eclipse-php-classes/menu/menu.class.php"); | |
| require_once("/home/data/httpd/eclipse-php-classes/system/dbconnection_rw.class.php"); | |
| #***************************************************************************** | |
| # | |
| # adReports.php | |
| # | |
| # Author: Nathan Gervais | |
| # Date: 2010-12-14 | |
| # | |
| # Description: Reporting tool for ad campaigns | |
| # | |
| # HISTORY: Jan 2, 2008 Dons first public release | |
| # | |
| #**************************************************************************** | |
| $App = new App(); | |
| $App->runStdWebAppCacheable(); | |
| $ErrorMessage = ""; | |
| $LDAPPerson = new LDAPPerson(); | |
| $LDAPPerson = $LDAPPerson->redirectIfNotLoggedIn(); | |
| ####################### CONNECTIONS | |
| # Connect to databases | |
| $dbc_RW = new DBConnectionRW(); | |
| // echo "ERROR FROM NEW CONNECTION: " . mysql_error() . "<br>"; | |
| $dbh_RW = $dbc_RW->connect(); | |
| // echo "ERROR FROM CONNECT: " . mysql_error() . "<br>"; | |
| include("../html/header.php"); | |
| $Menu = new Menu("en"); | |
| include("../modules/menu.php"); | |
| echo "<h3>Ad Reports</h3>"; | |
| $impressions = "create temporary table impressions select campaignKey, count(*) as impressions, yearweek(TimeImpressed) as period from CampaignImpressions FORCE INDEX (idx_TimeImpressed) WHERE TimeImpressed > (NOW()-INTERVAL 52 WEEK) group by campaignKey, yearweek(TimeImpressed) "; | |
| $clicks = "create temporary table clicks select campaignKey, count(ClickID) as clicks, yearweek(TimeClicked) as period from CampaignClicks WHERE TimeClicked > (NOW()-INTERVAL 52 WEEK) group by campaignkey, yearweek(TimeClicked)"; | |
| $merge = "select *, str_to_date(concat(period, ' Sunday'), '%X%V %W') as date from impressions left join clicks using (campaignKey, period) WHERE period > yearweek(NOW()-INTERVAL 51 WEEK)"; | |
| mysql_query($impressions, $dbh_RW); | |
| mysql_query($clicks, $dbh_RW); | |
| $result = mysql_query($merge, $dbh_RW); | |
| ?> | |
| <link rel="stylesheet" type="text/css" href="style.css"> | |
| <table> | |
| <tr> | |
| <th>Key</th> | |
| <th>Period</th> | |
| <th>Impressions</th> | |
| <th>Clicks</th> | |
| <th>CTR</th> | |
| </tr> | |
| <?php | |
| $diffcheck == ''; | |
| while($rr = mysql_fetch_array($result)){ | |
| if ($diffcheck != $rr['campaignKey']){ | |
| $new = TRUE; | |
| } | |
| else { | |
| $new = FALSE; | |
| } | |
| ?> | |
| <tr <?php if ($new) print 'class="new"'?>> | |
| <td><a href="adReportWeekDetail.php?campaignKey=<?php print $rr['campaignKey']?>&week=<?php print $rr['date']?>"><?php print $rr['campaignKey'];?></a></td> | |
| <td><?php print $rr['date']?></td> | |
| <td><?php print $rr['impressions']?></td> | |
| <td><?php print $rr['clicks']?></td> | |
| <td><?php printf("%01.2f", ($rr['clicks']/$rr['impressions'])*100) ?>%</td> | |
| </tr> | |
| <?php | |
| $diffcheck = $rr['campaignKey']; | |
| } | |
| ?> | |
| </table> |