![]() |
![]() |
Web Design Information |
|
![]() |
![]() |
Track Your Visitors, Using PHPDennis Pallett 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 doesnt 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 youve 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 youll 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 its in a hard-to-read format. Lets 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 doesnt exist!"; } Now that the log file is in a variable, its 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 were 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 <table>; echo <th>IP Address</th>; echo <th>Referrer</th>; echo <th>Date</th>; echo <th>Useragent</th>; echo <th>Remote Host</th>; foreach $log as $logline { echo <tr>; echo <td> . $logline[0] . </td>; echo <td> . urldecode$logline[1] . </td>; echo <td> . dated/m/Y, $logline[2] . </td>; echo <td> . $logline[3] . </td>; echo <td> . $logline[4] . </td>; echo </tr>; } echo </table>; 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.
| ![]() | ![]() | ![]() | RELATED ARTICLES Dotcom Business Plans Archive project One of the most important initiatives in the domain of business documentation is that of professor David Kirsch from the University of Maryland, who thought of a dotcom Business Plan Archive - , a project that consists of collecting business plans for posterity. The project was started in 2002, through the Web portal businessplanarchive.org. The site was built by Webmergers.com and the University of Marylands Robert H. Smith School of Business, in collaboration with the Center for History and New Media at George Mason University.The project received financial support from the Alfred P. Sloan Foundation. Adding Sound to your Web Site - The Good, The Bad And The Ugly Many webmasters like the idea of adding background music to their web sites but most shy away from doing it worrying about slow loading pages and large file sizes. There are many different ways to add background music to your site and some of them dont require large files to achieve professional results. Lets examine all the different ways to add background music to your site and rate them to find the best solution for you. TEN Tips For Your Web Site Home Page 1. Loading time:try to be below 20kbless number of imagesspecify height and width of imagesHtml with out errosWYSIWYG editors load up your html code. so try using text editor part of your html editors instead of visual editor Website Backgrounds: 5 Cool Tricks for a Professional Look Most websites feature white backgrounds. Or they sit on a navy or gray background -- but most of the screen is still white, like a page of paper set against the darker background. Occasionally, you might run across more interesting colors - reds and purples and greens and rust – often looking more gaudy than professional. PIM Team Case Study: Creating Text Effects With PHP and GD See how you can create graphic effects on text with PHP and GD - drop shadows, arcs, fonts and colors. The Essential Conflict in Humans is between our Species Nature and our Consciousness The two parts of our beings: Boost your Application Development “Reduce Time Intensive Phases during Software Development with TierDeveloper” Are Web Templates Worth It First off, I am a designer. Now youre thinking, heres this guy trying to convince me to hire a designer costing a few hundred to a few thousand dollars instead of buying a pre-made web template for about $60. Well, these days most companies dont have the money to invest in a costly web site and there are thousands of hungry web designers out there, plus now there are web template resources. These resources can equal great value and effectiveness for the customer as well as increased business for the web designer. Making Your Website Work for You: Attracting Visitors Just building a website is not enough. You need to get people to visit it. And just submitting to the search engines won’t do much.Here is a brief overview of 3 effective strategies to get people to your website: 1Search Engines, 2 PR and Marketing and 3 Email Newsletters. Here is a quick list of do’s and don’ts for each: Keep Them Coming Back - Update Your Site If you are anything like me, your website is a reflection of yourself. It contains your thoughts and communications, exposed to the entire world at all times. Look at virtually any non-commercial web site and you will get a glimpse at the person behind the monitor. Keywords: The First Step To Recognition Open Wordtracker [ http://www.wordtracker.com/ ] and youll see following proclamation by Brent Winters, President, FirstPlace Software, Inc., the makers of award-winning web promotion software, WebPosition Gold [ http://www.webposition.com/ ]: Enhance Your Website With A Yahoo-Style Directory Does your website have a links/resources page Profitable Websites for Exclusive Industries In the region where my company is located, South Bend, Indiana, the demand forweb design and associated services could be described as:leery.It’s not that the locale is horribly lacking evolvement technologically; rather that so many proprietors in this area are very uncertain as to what the internet can do and how they can go about forming profitable web sites for their exclusive industries. Making The Business Case For Web Standards Through the explosive growth of the Web, companies have realized the benefit of building a strong online presence. By publishing a website to the Internet, companies are able to build their brand, market their products, support existing customers, release publicity pieces, and even take orders. Lost in the feverish pace of growth however, has been an eye on the effect that their current web-building practices have on the bottom line and the future of their online presence. Not only does the website content itself have an impact on the companys income but so does the way the site itself is created. Metrics Matter! Recently, I talked with a speaker about her "extremely successful" Website.She based this opinion on the fact that she was selling several e-books every day and generating "some calls".When I asked if she was reviewing her traffic analysis, she said "No, why should we - its clearly working - we can tell that from the sales".I didnt ask if she knew how her sales and calls compared to the actual visitor numbers for the site - I suspected that shed have been shocked to learn how many more opportunities she was losing. Web Sites Share Your Dream With The World With over 16 million web sites on the Internet, how do you get your home-based businesss site noticed The "Unethical SEO" Myth "The use of black hat SEO techniques are completely unethical." Really I completely disagree. Top 10 Web Design Mistakes As a webmaster, you want to keep your visitors content so they’ll come back again.Below you will find ten common mistakes made by webmasters that may deter people from returning. Why You Need A Web Site "I have a small business with just a couple of employees and I don’t think my product can really be sold online. Do I need a web site" How Video Can Be Used Effectively Online A powerful way to convey your communication messages to your audience is to be able to have your promotional video available on your website. ![]() |
home | site map |
© 2005 |