Script PHP (User Agent) : Mengetahui atau Mendeteksi Merk HP yang Digunakan oleh Pengunjung Website Kita dengan PHP
Di Tulis Oleh : Ivan Silalahi 1 comments
- Tweet
Contoh lain, pernahkah Anda mengunjungi situs waptrik.com? Situs tersebut menyediakan free software aplikasi handphone Anda. Apabila Anda mencoba mengunjungi situs tersebut via browser di komputer Anda, maka situs tersebut tidak bisa diakses. Mengapa? karena situs tersebut hanya bisa diakses oleh handphone saja. Hebatnya lagi.. begitu Anda akses situs tersebut dengan handphone, maka secara otomatis akan muncul list software-software yang kompatible terhadap handphone Anda. Sebagai contoh misalkan Anda menggunakan Nokia, maka akan muncul list software yang support dengan Nokia, dst.
Nah.. yang menjadi pertanyaan, bagaimana cara mendeteksi bahwa seorang pengunjung situs kita atau secara umum pengakses script yang kita taruh ke dalam server hosting itu menggunakan handphone atau tidak? atau kalau perlu kita bisa mendeteksi merek handphone yang sedang digunakan visitor. Konsep ini nantinya kita gunakan untuk membuat konten mobile. Pertanyaan tersebut dapat terjawab dengan membaca user agent dari visitor.
Apa itu user agent? user agent adalah suatu aplikasi di sisi client (pengakses) yang secara otomatis mengirim informasi berupa string kepada server pada layanan web. String informasi ini bisa berisi OS yang digunakan, software vendor browsernya, versi software dll.
Salah satu bentuk string informasi user agent adalah sbb:
1.Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.8
Dari string di atas tampak informasi bahwa terdapat client yang sedang mengakses menggunakan OS Windows, dan menggunakan Firefox sebagai browsernya, serta versinya yaitu 3.5.8.
Nah… lantas bagaimana bentuk string user agent yang berasal dari handphone? ini dia contohnya untuk Nokia N90
1.NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.1
Anda bisa lihat bentuk-bentuk user agent untuk jenis handphone yang lain di Wikipedia.
Dari keterangan di atas tampak bahwa untuk handphone, di dalam user agent nya terdapat informasi jenis handphone serta serinya. Dengan demikian kita tinggal olah user agent tersebut untuk membangun konten mobile seperti yang diharapkan.
OK.. sekarang bagaimana cara membaca user agent dengan PHP? Caranya sangat mudah, yaitu dengan menggunakan perintah $_SERVER['HTTP_USER_AGENT']
Berikut ini contoh script PHP untuk mendeteksi merek handphone apa yang sedang digunakan user untuk mengakses script.
01.<?php
02.
03.$listMerk Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.80Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.81Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.82Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.83Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.85Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.87Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.89Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841.1Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841.3Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.83Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841.7Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841.9NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.10
NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.11
NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.12NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.13 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.80NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.15NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.16NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.17NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.18
NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.19
$_SERVER['HTTP_USER_AGENT']0$_SERVER['HTTP_USER_AGENT']1 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.82$listMerk $_SERVER['HTTP_USER_AGENT']4 $_SERVER['HTTP_USER_AGENT']5$_SERVER['HTTP_USER_AGENT']6
$_SERVER['HTTP_USER_AGENT']7$_SERVER['HTTP_USER_AGENT']8
$_SERVER['HTTP_USER_AGENT']901.0 01.1NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.13Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84$_SERVER['HTTP_USER_AGENT']5NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.10
01.601.7 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.8201.0 <?php0<?php1 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.80$_SERVER['HTTP_USER_AGENT']5<?php4
<?php5<?php6
<?php7
<?php8<?php9 02.002.1<?php1<?php4
02.4
02.502.6
02.702.7
Kemudian.. ini ada contoh script lain yang otomatis mendirect ke halaman tertentu yang khusus menampilkan konten mobile jika diakses melalui aplikasi mobile, dan akan mendirect ke halaman tertentu yang khusus menampilkan konten aslinya (non mobile content) jika diakses lewat PC (selain aplikasi mobile).
01.<?php
02.
03.$listMerk Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.80Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.81Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.82Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.83Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.85Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.87Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.89Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841.1Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841.3Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.83Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841.7Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841.9NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.10
NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.11
NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.12NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.13 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.80NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.15NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.16NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.17NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.18
NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.19
$_SERVER['HTTP_USER_AGENT']0Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.817 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.818
$_SERVER['HTTP_USER_AGENT']7$_SERVER['HTTP_USER_AGENT']1 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.82$listMerk $_SERVER['HTTP_USER_AGENT']4 $_SERVER['HTTP_USER_AGENT']5$_SERVER['HTTP_USER_AGENT']6
$_SERVER['HTTP_USER_AGENT']9$_SERVER['HTTP_USER_AGENT']8
01.601.0 01.1NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.13Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.84$_SERVER['HTTP_USER_AGENT']5NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.10
<?php501.7 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.8201.0 <?php0Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.817 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.841
<?php7<?php6
<?php8
02.401.7 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.82Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.817 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.849Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.850NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.10
02.5Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.853 01.7 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.82Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.817 Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.857Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.858NokiaN90-1/5.0607.7.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.10
Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.860
Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.861Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.862
Ide dari script di atas adalah memberi nilai awal Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.863. Nilai 0 diartikan bahwa script diakses oleh aplikasi non mobile. Selanjutnya dilakukan proses pengecekan browser User Agent nya. Jika ternyata user agent terdapat dalam array, maka nilai Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.817 berubah menjadi 1 yang berarti bahwa script diakses oleh aplikasi mobile. Sedangkan jika user agent tidak terdapat dalam array, maka nilai Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.817 akan tetap 0 yang berarti bahwa script diakses oleh aplikasi non mobile. Untuk mendirect ke halaman tertentu, Anda bisa menggunakan function Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.866.Untuk melihat tampilan dari script di atas, silakan upload ke server hosting lalu akses script tersebut via handphone Anda.
CATATAN:
Jangan Anda taruh di localhost Oke .. !
OK.. selamat mencoba.
Tutorial terkait dengan Script PHP (User Agent) : Mengetahui atau Mendeteksi Merk HP yang Digunakan oleh Pengunjung Website Kita dengan PHP :
Terimakasih Atas Kunjungan Sahabat Setia Belajar Pintar PHP
Judul Pelajaran PHP : Script PHP (User Agent) : Mengetahui atau Mendeteksi Merk HP yang Digunakan oleh Pengunjung Website Kita dengan PHP
Ditulis oleh Ivan Silalahi
Rating postingan ini 5 dari 5