Go Back   CodingForums.com > :: Server side development > PHP

Before you post, read our: Rules & Posting Guidelines

Reply
 
Thread Tools Rate Thread
Enjoy an ad free experience by logging in. Not a member yet? Register.
Old 11-12-2007, 10:57 AM   PM User | #1
eon201
New Coder

 
Join Date: Oct 2007
Posts: 25
Thanks: 0
Thanked 0 Times in 0 Posts
eon201 is an unknown quantity at this point
Unhappy using the array_unique function

Hi Im trying to work out unique page visits within my script from my server log files. So far I can calculate the page views, but not the UNIQUE page views.

I belive I need to use the array_unique function, but I can't get it to work.

Can anyone help me??

Here is my code:
PHP Code:
<?php

$filename 
'logs/''ex'date('ymd'). '.log'// Filename Checker

        
$fp fopen($filename"r"); //Open the server log
        
$content fread($fpfilesize($filename));     // Read the server log   
        
$content explode("\n"$content); // explode into array   
        
$content  array_reverse($content ); // reverse the array
        
$n =0;
        
$n2 =0;
        foreach (
$content as $key=>$value)
        {
//strip out all this stuff we dont want
            
$weberror substr($value, -183); //strip lines beginning with 400/401/403/404/503
           
            
$findme   'Googlebot';
            
$googlebot strpos($value$findme);
           
            
$findme1   'picsearch.com/bot';
            
$picsearch strpos($value$findme1);

            
$findme5   '.gif';
            
$gif strpos($value$findme5);

            
$findme6   '.jpg';
            
$jpg strpos($value$findme6);

            
$findme7   '.txt';
            
$txt strpos($value$findme7);

            
$findme8   '.swf';
            
$swf strpos($value$findme8);

            
$findme9   '.dll';
            
$dll strpos($value$findme9);

            
$findme10   '.asp';
            
$asp strpos($value$findme10);

            
$findme11   '.png';
            
$png strpos($value$findme11);

            
$findme12   '.css';
            
$css strpos($value$findme12);

            
$findme13   '.ico';
            
$ico strpos($value$findme13);
           
            
$findme14   '.js';
            
$js strpos($value$findme14);

            
$findme16   'msnbot';
            
$msnbot strpos($value$findme16);

            
$findme17   'gigablast.com/spider.html';
            
$gigaspider strpos($value$findme17);

            
$findme18   'InternetSeer.com';
            
$internetSeer strpos($value$findme18);

            
$findme19   '+Slurp';
            
$yahoo strpos($value$findme19);

            
$findme20   '....../1.0+';
            
$msnsneakbot strpos($value$findme20);
           
           
           
                if (
$weberror != "400" && $weberror != "401" && $weberror != "403" && $weberror != "404" && $weberror != "503" && $googlebot === false && $picsearch === false && $msnbot === false && $gigaspider === false && $internetSeer === false && $yahoo === false && $msnsneakbot === false && $gif === false && $jpg === false && $txt === false && $swf === false && $dll === false && $asp === false && $png === false && $css === false && $ico === false && $js === false)
                {

                            
//now we have stripped explode
                           
                        
$bits explode(" "$value);
                        @
$request $bits[5];
                        @
$log_client $bits[9];
                       
                        
$log_clientvar explode("\n"$log_client);                       
                        
$result array_unique($log_clientvar);
                       
               
//search for string to find page views for this page
                        
$find 'booked/excursions/';
                       
                        if (
strpos($request$find) == true )
                        {
                        
print_r("$request<br/>");
                        
$n++;
                        }
                       
//Surely I should work out unique page views here???

                
}
               
                else
                {
                }

        }               
                echo 
"<br/>Page views for '$find' = $n<br/><br/>";
                echo 
"Unique page views for '$find' = $n2";
fclose($fp);           

?>
eon201 is offline   Reply With Quote
Old 11-12-2007, 03:23 PM   PM User | #2
eon201
New Coder

 
Join Date: Oct 2007
Posts: 25
Thanks: 0
Thanked 0 Times in 0 Posts
eon201 is an unknown quantity at this point
ahhh... I have solved my problem. But thanks anyway!
eon201 is offline   Reply With Quote
Reply

Bookmarks

Jump To Top of Thread


Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 01:46 AM.


Advertisement
Log in to turn off these ads.