|
ตัวอย่างการเขียน php script ตรวจสอบ Referer ผู้เข้าชมเว็บไซต์บน hosting ของเรา
วันนี้จะมาแนะนำตัวอย่างการเขียน php script ในการใช้ตรวจสอบ Referrer หรือว่าการตรวจสอบว่าผู้เข้าชมเว็บไซต์บน hosting ของเราเข้ามาผ่านช่องทางอะไรบ้าง ไม่ว่าจะเป็น Search Engine อย่าง Google bing หรือ yahoo เป็นต้นครับ ในส่วนของการเช็ค Referrer นั้นมีผลอย่างมากต่อการวิเคราะห์ทิศทาง ในการทำการตลาด แม้ว่าตัว hosting ที่ดีเองจะมี IP ที่เป็นที่น่าสนใจของเหล่า Search Engine แล้ว เราก็จำเป็นที่จะต้องวิเคราะห์ข้อมูลการเข้าชม hosting เพื่อให้เราสามารถจัดแสดงข้อมูลให้เหมาะสมตามความต้องการของผู้เช้าชม hosting ได้
เวลาที่มีคนคลิ๊กเข้าชมเว็บไซต์ของเรา โดยการค้นหาผ่าน search engine จะมีการส่งค่าตัวแปรมา ตามความจริงแล้ว search engine ไม่ได้ต้องการส่งให้กับเรา แต่ search engine เองต้องการที่จะบันทึกข้อมูลการเข้าเยี่ยมชมเว็บไซต์ของเรา ผ่านทาง Keyword เหล่านั้นด้วย แต่เราสามารถดึงข้อมูลเหล่านั้นนำมาใช้ประโยชน์ในการตรวจสอบว่ามีผู้เช้าชมเว็บไซต์เราบน hosting มาจาก keyword อะไรบ้าง โดยสามารถเรียกได้จากตัวแปร Environment ของ Apache Hosting ดังนี้
$_SERVER['HTTP_REFERER']);
ตัวแปรระดับ Server ตัวนี้เป็นตัวแปรที่จะเก็บค่า URL ก่อนหน้าที่จะเข้ามาครับ โดยเมื่อเราได้ค่ามาแล้ว ก็สามารถที่จะนำมาวิเคราะห์ต่อ โดยการแยกชื่อ host ออกจากข้อมูลส่วนอื่นๆ ที่เหลือครับ โดยทำได้ดังนี้
$url_array = parse_url($_SERVER['HTTP_REFERER']);
$domain = $url_array['host'];
$varmix = $url_array['query'];
เมื่อเราได้ชื่อ host มาแล้ว ก็สามารถที่จะนำมาจำแนกเป็นชื่อ search engine ต่าง ๆ ได้ โดยผมจะแบ่งไว้ 4 แบบครับ เพื่อเก็บค่า keyword ที่เข้ามา เนื่องจากแต่ละ search engine ก็จะมีชื่อตัวแปรในการเก็บค่า keyword ที่เข้ามาที่ hosting ต่างกันครับ
if (eregi("google.", $domain)) { $keyword = $q; }
else if (eregi("yahoo.", $domain)) { $keyword = $p; }
else if (eregi("msn.", $domain)) { $keyword = $q; }
else if (eregi("bing.", $domain)) { $keyword = $q; }
ทีนี้เราลองมาดู code เต็ม ๆ กันดูครับ
if (isset($_SERVER['HTTP_REFERER'])){
$url_array = parse_url($_SERVER['HTTP_REFERER']);
$domain = $url_array['host'];
$varmix = $url_array['query'];
parse_str($varmix);
if (eregi("google.", $domain)) { $keyword = $q; }
else if (eregi("yahoo.", $domain)) { $keyword = $p; }
else if (eregi("msn.", $domain)) { $keyword = $q; }
else if (eregi("bing.", $domain)) { $keyword = $q; }
if (trim($keyword) == ""){
$keyword = $url_array['query'];
}
}
บทความโดย ณัฐธัญ เตชะกาญจนวงศ์
Webdesign Article : |