189 Zeilen
		
	
	
		
			Kein EOL
		
	
	
		
			6,3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			189 Zeilen
		
	
	
		
			Kein EOL
		
	
	
		
			6,3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
/***********************************************
 | 
						|
 *                                             *
 | 
						|
 *   semmelstatz_history.php v3.3              *
 | 
						|
 *   Copyright: © 2005-2009 kopfhoch-studio    *
 | 
						|
 *                                             *
 | 
						|
 ***********************************************/
 | 
						|
 
 | 
						|
 if(!current_user_can('manage_statz')) {
 | 
						|
	die('Zugriff verweigert');
 | 
						|
}
 | 
						|
	
 | 
						|
	function sem_drawLast30DaysGoo() {
 | 
						|
		global $wpdb;
 | 
						|
		
 | 
						|
        $sql = $wpdb->get_results("ALTER TABLE ".$wpdb->statzhist." ORDER BY date ASC");
 | 
						|
        $results = $wpdb->get_results("SELECT DAY(date) as days, visitors FROM ".$wpdb->statzhist." WHERE date >= NOW() - INTERVAL 31 DAY");
 | 
						|
        
 | 
						|
        print "<div class='statz'>Besucher: Die letzten 30 Tage</div>";
 | 
						|
        print "<div align='left'>";
 | 
						|
		
 | 
						|
			if (empty($results)) {
 | 
						|
				print "<small>... noch keine Einträge</small></div>";
 | 
						|
				return;
 | 
						|
			}
 | 
						|
			
 | 
						|
			foreach ($results as $result) {
 | 
						|
				$visitors[] = $result->visitors;
 | 
						|
				$days[] = $result->days;
 | 
						|
			}
 | 
						|
			
 | 
						|
			$maxvalue = max($visitors);
 | 
						|
			$daylabels = implode('|', $days);
 | 
						|
			
 | 
						|
			print "<div class='chart'>";
 | 
						|
			
 | 
						|
				print "<img src=http://chart.apis.google.com/chart?chg=25,25&chxl=0:|".$daylabels."|1:|0|".$maxvalue."&chbh=a&cht=bvs&chs=600x150&chxt=x,y&chd=".sem_encodeChartData($visitors).">";
 | 
						|
			
 | 
						|
			print "</div>";
 | 
						|
			
 | 
						|
		print "</div>";
 | 
						|
		print "<hr />";
 | 
						|
	}
 | 
						|
	
 | 
						|
### HISTORY Monatsgrafik GOOGLE-API
 | 
						|
 | 
						|
	function sem_drawAllMonthGoo() {
 | 
						|
		global $wpdb;
 | 
						|
        
 | 
						|
		$nummonths = $wpdb->get_var("SELECT MONTH(date) FROM ".$wpdb->statzhist);
 | 
						|
		$results = $wpdb->get_results("SELECT MONTH(date) as months, SUM(visitors) as visitors FROM ".$wpdb->statzhist." GROUP BY months ORDER BY date ASC");
 | 
						|
		
 | 
						|
		print "<div class='statz'>Besucher: Die letzten ".$nummonths." Monate</div>";
 | 
						|
        print "<div align='left'>";
 | 
						|
		
 | 
						|
			if (empty($results)) {
 | 
						|
				print "<small>... noch keine Einträge</small></div>";
 | 
						|
				return;
 | 
						|
			}
 | 
						|
			
 | 
						|
			foreach ($results as $result) {
 | 
						|
				$visitors[] = $result->visitors;
 | 
						|
				$months[] = $result->months;
 | 
						|
			}
 | 
						|
			
 | 
						|
			$maxvalue = max($visitors);
 | 
						|
			
 | 
						|
			$monthlabels = implode('|', $months);
 | 
						|
			
 | 
						|
			print "<div class='chart'>";
 | 
						|
		
 | 
						|
				print "<img src=http://chart.apis.google.com/chart?chg=25,25&chxt=x,y&chxl=0:|".$monthlabels."|1:|0|".$maxvalue."&chbh=a&cht=bvs&chs=600x150&chd=".sem_encodeChartData($visitors).">";
 | 
						|
			
 | 
						|
			print "</div>";
 | 
						|
			
 | 
						|
		print "</div>";
 | 
						|
		print "<hr />";
 | 
						|
	}
 | 
						|
	
 | 
						|
### HISTORY ALLE historischen Tage
 | 
						|
 | 
						|
	function sem_drawAllDaysGoo() {
 | 
						|
		global $wpdb;
 | 
						|
		
 | 
						|
        $numdays = $wpdb->get_var("SELECT COUNT(date) FROM ".$wpdb->statzhist);
 | 
						|
		
 | 
						|
		$results = $wpdb->get_results("SELECT referers, visitors, hits, substring(date,1,10) AS date
 | 
						|
		FROM ".$wpdb->statzhist." GROUP BY date ORDER BY date ASC");
 | 
						|
		$visitors=$totaldays->visitors;
 | 
						|
        
 | 
						|
        print "<div class='statz'>Besucher: ".$numdays." Tage zurück</div>";
 | 
						|
		print "<div align='left'>";
 | 
						|
		
 | 
						|
			if (empty($results)) {
 | 
						|
				print "<small>... noch keine Einträge</small></div>";
 | 
						|
				return;
 | 
						|
			}
 | 
						|
			
 | 
						|
			foreach($results as $result) {
 | 
						|
				$visitors[] = $result->visitors;
 | 
						|
				$hits[] = $result->hits;
 | 
						|
				$referers[] = $result->referers;
 | 
						|
			}
 | 
						|
				
 | 
						|
			$maxvalue = max($visitors); 
 | 
						|
			
 | 
						|
			print "<div class='chart'>";
 | 
						|
			
 | 
						|
				print "<img src=http://chart.apis.google.com/chart?chg=25,25&cht=lc&chs=600x200&chd=".sem_encodeChartData($visitors)."&chxt=y&chxl=0:|0|".$maxvalue.">";
 | 
						|
			
 | 
						|
			print "</div>";
 | 
						|
		
 | 
						|
		print "</div>";
 | 
						|
		print "<hr />";
 | 
						|
	}
 | 
						|
	
 | 
						|
	function sem_showAllDaysInNumbers() {
 | 
						|
		global $wpdb;
 | 
						|
		
 | 
						|
        $numdays = $wpdb->get_var("SELECT COUNT(date) as num FROM $wpdb->statzhist");
 | 
						|
		
 | 
						|
        $results = $wpdb->get_results("SELECT referers, visitors, hits, substring(date,1,10) AS date
 | 
						|
		FROM ".$wpdb->statzhist." GROUP BY date ORDER BY date DESC");
 | 
						|
        
 | 
						|
        print "<div class='statz'>Die letzten ".$numdays." Tage</div>";
 | 
						|
        if (empty($results)) {
 | 
						|
            print "<small>... noch keine Einträge</small>";
 | 
						|
            return;
 | 
						|
        }
 | 
						|
        print "<table class='statzelement'>";
 | 
						|
        print "<thead>";
 | 
						|
        print "<tr>";
 | 
						|
        print "<th style='width:15%;text-align:center;'>Datum</th>";
 | 
						|
        print "<th style='width:10%;text-align:right;'>Besucher</th>";
 | 
						|
        print "<th style='width:10%;text-align:right;'>Hits</th>";
 | 
						|
        print "<th style='width:10%;text-align:right;'>Referer</th>";
 | 
						|
		print "<th style='text-align:right;'> </th>";
 | 
						|
        print "</tr>";
 | 
						|
        print "</thead>";
 | 
						|
        print "<tbody>";
 | 
						|
            foreach($results as $key=>$result) {
 | 
						|
                $date = mysql2date('d.m.Y',$result->date);
 | 
						|
                $visitors = $result->visitors; $sum_visitors += $visitors;
 | 
						|
                $hits = $result->hits; $sum_hits += $hits;
 | 
						|
                $referers = $result->referers; $sum_referers += $referers;
 | 
						|
                print "<tr"; if(1&$key) print " class='alternate'"; print ">";
 | 
						|
                print "<td style='text-align:center;'>".$date."</td>";
 | 
						|
                print "<td style='text-align:right;'>".$visitors."</td>";
 | 
						|
                print "<td style='text-align:right;'>".$hits."</td>";
 | 
						|
                print "<td style='text-align:right;'>".$referers."</td>";
 | 
						|
				print "<td style='text-align:right;'> </td>";
 | 
						|
                print "</tr>";
 | 
						|
            }
 | 
						|
			
 | 
						|
        print "<tr><td> </td></tr>";
 | 
						|
        print "<tr class='alternate'"; print ">";
 | 
						|
        print "<td style='text-align:center;'><b>Gesamt</b></td>";
 | 
						|
        print "<td style='text-align:right;'><b>".$sum_visitors."</b></td>";
 | 
						|
        print "<td style='text-align:right;'><b>".$sum_hits."</b></td>";
 | 
						|
        print "<td style='text-align:right;'><b>".$sum_referers."</b></td>";
 | 
						|
        print "</tr>";
 | 
						|
        print "<tr>";
 | 
						|
        print "<td style='text-align:center;'><b>Durchschnitt</b></td>";
 | 
						|
        print "<td style='text-align:right;'>".ceil($sum_visitors / $numdays)."</td>";
 | 
						|
        print "<td style='text-align:right;'>".ceil($sum_hits / $numdays)."</td>";
 | 
						|
        print "<td style='text-align:right;'>".ceil($sum_referers / $numdays)."</td>";
 | 
						|
        print "</tr>";
 | 
						|
        print "</tbody>";
 | 
						|
        print "</table>";
 | 
						|
		print "<hr />";
 | 
						|
	}
 | 
						|
 | 
						|
	
 | 
						|
### ANZEIGE HISTORY
 | 
						|
	
 | 
						|
	print "<div class='wrap'>";
 | 
						|
		print "<div id='icon-semmelstatz' class='icon32'><br /></div>";
 | 
						|
		print "<h2>Semmelstatz › Historie</h2>";
 | 
						|
		
 | 
						|
		sem_drawLast30DaysGoo();
 | 
						|
		sem_drawAllMonthGoo();
 | 
						|
		sem_drawAllDaysGoo();
 | 
						|
		sem_showAllDaysInNumbers();
 | 
						|
		sem_showCopyright();
 | 
						|
	
 | 
						|
	print "</div>";
 | 
						|
		
 | 
						|
?>
 |