The Highland Marketing Group
Google
 
Web thmg.com

Affiliate Revenue

Domain Names E Books Email Marketing Ezine Marketing

Ezine Publishing

Internet Marketing Marketing PPC Advertising SEO

Site Promotion

Traffic Building Web Design Web Development Web Hosting
';

echo '

';

echo '

';

echo '

';

echo '

';

echo '

';

echo '

';

}

echo '';

You can also use custom functions to filter out search engines and crawlers. Or create graphs using PHP/SWF Charts (http://www.maani.us/charts/index.php). The possibilities are endless, and you can do all kinds of things!

In Conclusion...

In this article I have shown you have to create a logging module for your own PHP website, using nothing more than PHP and its built-in functions. To view the log file you need to parse it using PHP, and then display it in whatever way you like. It is up to you to create a kick-ass traffic analyzer.

If you still prefer to use a pre-built traffic analyzer, have a look at http://www.hotscripts.com.

About The Author

Dennis Pallett is a young tech writer, with much experience in ASP, PHP and other web technologies. He enjoys writing, and has written several articles and tutorials. To find more of his work, look at his websites at http://www.phpit.net, http://www.aspit.net and http://www.ezfaqs.com.


MORE RESOURCES:
The Revolution in Social Software is Finally Here - MediaShift Idea Lab

Track Your Visitors, Using PHP

300GB Web Hosting for only $5.77 a Month!


There are many different traffic analysis tools, ranging from simple counters to complete traffic analyzers. Although there are some free ones, most of them come with a price tag. Why not do it yourself? With PHP, you can easily create a log file within minutes. In this article I will show you how!

Getting the information

The most important part is getting the information from your visitor. Thankfully, this is extremely easy to do in PHP (or any other scripting language for that matter). PHP has a special global variable called $_SERVER which contains several environment variables, including information about your visitor. To get all the information you want, simply use the following code:

// Getting the information

$ipaddress = $_SERVER['REMOTE_ADDR'];

$page = "http://{$_SERVER['HTTP_HOST']}{$_SERVER['PHP_SELF']}";

$page .= iif(!empty($_SERVER['QUERY_STRING']), "?{$_SERVER['QUERY_STRING']}", "");

$referrer = $_SERVER['HTTP_REFERER'];

$datetime = mktime();

$useragent = $_SERVER['HTTP_USER_AGENT'];

$remotehost = @getHostByAddr($ipaddress);

As you can see the majority of information comes from the $_SERVER variable. The mktime() (http://nl2.php.net/mktime) and getHostByAddr() (http://nl2.php.net/manual/en/function.gethostbyaddr.php) functions are used to get additional information about the visitor.

Note: I used a function in the above example called iif(). You can get this function at http://www.phpit.net/code/iif-function.

Logging the information

Now that you have all the information you need, it must be written to a log file so you can later look at it, and create useful graphs and charts. To do this you need a few simple PHP function, like fopen (http://www.php.net/fopen) and fwrite (http://www.php.net/fwrite).

The below code will first create a complete line out of all the information. Then it will open the log file in "Append" mode, and if it doesn't exist yet, create it.

If no errors have occurred, it will write the new logline to the log file, at the bottom, and finally close the log file again.

// Create log line

$logline = $ipaddress . '|' . $referrer . '|' . $datetime . '|' . $useragent . '|' . $remotehost . '|' . $page . " ";

// Write to log file:

$logfile = '/some/path/to/your/logfile.txt';

// Open the log file in "Append" mode

if (!$handle = fopen($logfile, 'a+')) {

die("Failed to open log file");

}

// Write $logline to our logfile.

if (fwrite($handle, $logline) === FALSE) {

die("Failed to write to log file");

}

fclose($handle);

Now you've got a fully function logging module. To start tracking visitors on your website simply include the logging module into your pages with the include() function (http://www.php.net/include):

include ('log.php');

Okay, now I want to view my log file

After a while you'll probably want to view your log file. You can easily do so by simply using a standard text editor (like Notepad on Windows) to open the log file, but this is far from desired, because it's in a hard-to-read format.

Let's use PHP to generate useful overviews for is. The first thing that needs to be done is get the contents from the log file in a variable, like so:

// Open log file

$logfile = "/some/path/to/your/logfile.txt";

if (file_exists($logfile)) {

$handle = fopen($logfile, "r");

$log = fread($handle, filesize($logfile));

fclose($handle);

} else {

die ("The log file doesn't exist!");

}

Now that the log file is in a variable, it's best if each logline is in a separate variable. We can do this using the explode() function (http://www.php.net/explode), like so:

// Seperate each logline

$log = explode(" ", trim($log));

After that it may be useful to get each part of each logline in a separate variable. This can be done by looping through each logline, and using explode again:

// Seperate each part in each logline

for ($i = 0; $i < count($log); $i++) {

$log[$i] = trim($log[$i]);

$log[$i] = explode('|', $log[$i]);

}

Now the complete log file has been parsed, and we're ready to start generating some interesting stuff.

The first thing that is very easy to do is getting the number of pageviews. Simply use count() (http://www.phpit.net/count) on the $log array, and there you have it;

echo count($log) . " people have visited this website.";

You can also generate a complete overview of your log file, using a simple foreach loop and tables. For example:

// Show a table of the logfile

echo '';

echo 'IP Address';

echo 'Referrer';

echo 'Date';

echo 'Useragent';

echo 'Remote Host';

foreach ($log as $logline) {

echo '

' . $logline['0'] . '' . urldecode($logline['1']) . '' . date('d/m/Y', $logline['2']) . '' . $logline['3'] . '' . $logline['4'] . '

The Revolution in Social Software is Finally Here
MediaShift Idea Lab, CA - 12 hours ago
The time and costs required for Web development have plummeted. For starters, the cost of hardware, software, bandwidth and other services have dropped ...

Extra Cash for the Holidays or Anytime With the Launch of Diamonds ... - MarketWatch

Extra Cash for the Holidays or Anytime With the Launch of Diamonds ...
MarketWatch - 14 hours ago
TAMPA, FL, Dec 02, 2008 (MARKET WIRE via COMTEX) -- Bayshore Solutions, a leading Web development and Web hosting provider, is proud to announce the launch ...
Extra Cash for the Holidays or Anytime With the Launch of Diamonds ... International Business Times
all 11 news articles

BSS celebrate Microsoft Gold accolade - WalesOnline

BSS celebrate Microsoft Gold accolade
WalesOnline, United Kingdom - 33 minutes ago
In the past three years, BSS has introduced Picseli and Pulse IT – two sister companies, specialising in web development and hardware and networking support ...

iCrossing and Gridsum Partner to Develop Search Market in Asia - MarketWatch

iCrossing and Gridsum Partner to Develop Search Market in Asia
MarketWatch - 16 hours ago
The company blends best-in-class digital marketing services - including paid and natural search marketing, Web development, social media, research and ...

Unknown terror organization claims responsibility for AK Party bombing - Today's Zaman

Unknown terror organization claims responsibility for AK Party bombing
Today's Zaman, Turkey - 7 hours ago
A terrorist organization that was previously not widely known in Turkey yesterday claimed responsibility for a bomb attack on Monday afternoon on the ruling ...

Web-Development - Google News

RELATED ARTICLES
User Interface Design: Key to Achieve Best Web Development
From early days of www, the Internet sites that are added day by day are increasing tremendously. When you will consider this pool of web, may be they are about computers, industry, entertainment, search engines, fashion, organizational or even individual, all of these sites are concerned about one major part of web development apart from the logic or programming efforts behind it is 'User Interface Design'.
Web Site Development Process - The Life-cycle Steps
A system development process can follow a number of standard or company specific frameworks, methodologies, modeling tools and languages. Software development life cycle normally comes with some standards which can fulfill the needs of any development team.
Web Site Promotion: How To Advertise Your Website For Profits
Making money with your web site is the dream and goal of millions of webmasters all over the internet including myself. In order to reach this goal you need a variety of web site promotions running all at the same time.
Wheres Your Focus, Money or Customer?
Is your website Really useful?I had a 'rep' in yesterday who was telling me he had a website, not realising I'm a man of many talents he was telling me about all the new companies he was working with and the great products he could offer and reminded me to go to his website.When he'd finished, I asked him:-"what is the purpose of your website?" a question which he couldn't answer.
7 Questions to Understand Your Customer Better
Customer service questionnaires can help your clients better understand their requirements. Your clients can benefit by:* Focusing on immediate project requirements * Increased awareness of budgeted time and finances * Better understanding of project goals * Setting priorities of essential project features * Planning for project post-implementation phaseOn the other hand, you as a service provider will have a clearer understanding of what your clients want.
In Business? 10 Reasons Why You Need a Website -- Now!
1) Word of Mouth The single most powerful form of new business creation is word of mouth. Your past customers, friends, acquaintances and staff aren't likely to carry your brochure or even your business card everywhere they go.
Whats Your Business Online Attitude?
This article was prompted by some customer support work I was involved in for a private members site. One of the paid subscription members wanted someone to look over his website and give an opinion of what we thought of its design.
CPanel Fantastico - Features and Benefits
Fantastico is a 3rd-party cPanel add-on and can be purchased and added to the standard cPanel interface. Fantastico allows you to quickly install a variety of open-source scripts.
Five Steps to Create Your Software Product with Outsourcing
Many executives and investors are skeptical that software products can be developed using outsourcing. Even more skepticism is expressed at the idea of outsourcing version 1.
Building a Web Store on Shoestring Budget in less than Four Hours
Starting a business online is no longer as difficult as it used to be! Now, there are plenty of interesting business ideas that anybody can pick up from various Internet resources. Startup related cost, which used to deter many in taking action, has become negligible.
How Does Your Website Make Me Feel?
When people think about the Internet, they think about technology. When people hear that I am a Website strategy expert, they see me as a "techy type".
Make Your Own Website - General Website Design Tips
Wow, we`ve already taken a domain and chosen a web host. Great job ! Now it`s time for something special: making your own website.
The Topic Of Your Website
The first thing you will have to deal building your website has nothing to do with the web design itself, it's me related to content writing but it must be defined and will effect the rest of your actions. So first of all you need to decide what the topic of your future website is.
7 Profit Producing Reasons Why Every Successful Service Professional Needs A Web Presence
Your business website is a critical aspect of being able to start and continue conversations with potential clients. It's the ultimate self-service window for potential and current clients who come to you interested in your services and/or products.
What and How to choose the Right Keywords for Mega Traffic
Keywords in Search Engine Optimizing and Search Engine Marketing are the building blocks and foundation of your website on the search engines. If your foundation is weak or poorly put together your webpages won't have much to be based upon for the engines to rank with.
Top 7 Tips for Building an Antique Car Website
Like wine cars get more attractive to collectors as years pass by. The fact is there are only a finite number of cars made in the world in any model and make.
How To Keep Your Website Sticky
Developing a website with content that entices visitors to return over and over again is something that takes time and effort to put together. This checklist can give you a great start on creating a popular website that entices readers to hang around on your site.
Top 7 Reasons Why Your Business Needs a Website
A website provides invaluable advantages for businesses who have one.7 reasons why your business needs a website are:1.
Getting a Web Site Can Be Fast, Easy, and Inexpensive When You Know Your Options
So what do you do if need to get a web site but you're not sure how to go about getting one. The good news is you have several options.
Bring Your Visitors Back Clamoring for More! Maintain and Improve Your Web Site Weekly - Part 1
80% of your Web site is Maintenance!Once your Web site is up, you must maintain it. That means changes, and each time you make a change, you may make a mistake.

Affiliate Revenue

Domain Names E Books Email Marketing Ezine Marketing

Ezine Publishing

Internet Marketing Marketing PPC Advertising SEO

Site Promotion

Traffic Building Web Design Web Development Web Hosting
Home | Site Map

| 1000 Free Places for Ads! | Free Classified Ads | Free-For-All AdsReciprocal Links | Search Engines |
| Award Sites | Webmaster Tools | Free Giveaways | Get Paid to Surf
| Free Business Classifieds | Auction Tips | Debt Consolidation Tips | Become a Notary Public |

Copyright © 2006-2007. The Highland Marketing Group. All Rights Reserved.