ashburnham Posted December 5, 2008 Share Posted December 5, 2008 I have a really simple PHP script that is logging visits to a page on my website into a database with details of the IP address and referrer details. One specific referrer is sending a large amount of page visits to us but they appear to be incorrect/irrelevant as (1) the number of visits is disproportionate to the times the form on the page is completed compare to other referrers and (2) I have a separate tracker provided by my website host that isn't logging the same high volumes of clicks as my simple PHP script. My knowledge of PHP is fair but in terms of programs like website trackers/statistics I haven't got a clue but I assume the problem is because my basic script is logging bots as well as humans whereas the more sophisticated one provided by my host has the ability to exclude these. Any idea how I can establish whether a page visit is a human user or bot before I log it into my database? Quote Link to comment https://forums.phpfreaks.com/topic/135669-solved-simple-php-script-logging-visitors-but-want-to-exclude-bots/ Share on other sites More sharing options...
waynew Posted December 5, 2008 Share Posted December 5, 2008 Maybe this will help. Maybe. http://www.nes-emulator.com/x_bot.php Quote Link to comment https://forums.phpfreaks.com/topic/135669-solved-simple-php-script-logging-visitors-but-want-to-exclude-bots/#findComment-706849 Share on other sites More sharing options...
JonnoTheDev Posted December 5, 2008 Share Posted December 5, 2008 This will work function isSpider($userAgent) { if(stristr($userAgent, "Googlebot") || /* Google */ stristr($userAgent, "Slurp") || /* Inktomi/Y! */ stristr($userAgent, "MSNBOT") || /* MSN */ stristr($userAgent, "teoma") || /* Teoma */ stristr($userAgent, "ia_archiver") || /* Alexa */ stristr($userAgent, "Scooter") || /* Altavista */ stristr($userAgent, "Mercator") || /* Altavista */ stristr($userAgent, "FAST") || /* AllTheWeb */ stristr($userAgent, "MantraAgent") || /* LookSmart */ stristr($userAgent, "Lycos") || /* Lycos */ stristr($userAgent, "ZyBorg")) { /* WISEnut */ return true; } return false; } if(!isSpider(getenv("HTTP_USER_AGENT"))) { // user tracking logic goes in here } Quote Link to comment https://forums.phpfreaks.com/topic/135669-solved-simple-php-script-logging-visitors-but-want-to-exclude-bots/#findComment-706858 Share on other sites More sharing options...
ashburnham Posted December 5, 2008 Author Share Posted December 5, 2008 thanks guys - sure these two solutions will sort my problem out Quote Link to comment https://forums.phpfreaks.com/topic/135669-solved-simple-php-script-logging-visitors-but-want-to-exclude-bots/#findComment-706860 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.