var mob = new Array(3)
for (i=0; i < 3; i++)
mob[i]=new Array(3)
//MOBIL REKLAM ICERIGI BURADAN DEGISTIRILECEK
mob[0][1] = "http://google.com/banner/mobil.gif"
mob[0][2] = "http://m.yandex.com"
mob[1][1] = "http://google.com/banner/mobil.gif"
mob[1][2] = "http://m.yahoo.com"
mob[2][1] = "http://google.com/banner/mobil.gif"
mob[2][2] = "http://m.google.com"
var web = new Array(3)
for (i=0; i < 3; i++)
web[i]=new Array(3)
web[0][1] = "http://google.com/3.gif"
web[0][2] = "http://google.com/"
web[1][1] = "http://google.com/2.gif"
web[1][2] = "http://yandex.com"
web[2][1] = "http://google.com/1.gif"
web[2][2] = "http://yahoo.com"
hangiref=site;
var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));
if (mobile)
{
rastgele=Math.floor(Math.random()*mob.length);
window.location = "http://m.google.com"
}
else
{
rastgele=Math.floor(Math.random()*web.length);
document.write('<a href="'+web[rastgele][2]+'?site='+hangiref+'"><img src= "' + web[rastgele][1] + '"></a>');
}Gördüğünüz gibi mobil kullanıcıyı tarayıcısına & işletim sistemine göre algılıyor.Biz ise aşağıdaki php kodundaki gibi ip sine göre algılamak istiyoruz ;
<?php
/*
* ORNEK KULLANIM
include '../operatorController.class.php';
$operator = operatorController::Run();
if ( $operator !== FALSE )
echo "OPERATOR : " . $operator;
else
echo "Mobil bir aygit degil";
*/
class operatorController {
private
$operatorIPAddr = array(
"TURKCELL" => array(
"86.108.128.1/86.108.255.254",
"86.108.132.129/86.108.132.158"
),
"VODAFONE" => array(
"212.65.132.1/212.65.132.62",
"212.65.140.160/212.65.140.191"
),
"AVEA" => array(
"217.174.43.132",
"217.174.43.133"
),
"KKTCEL" => array(
"212.252.169.99",
"94.79.91.1/94.79.91.254"
)
),
$clientIPAddr = NULL,
$isMobileOperator = FALSE;
public function __construct($IPAddr = NULL) {
#$this->clientIPAddr = is_null($IPAddr) ? $_SERVER['REMOTE_ADDR'] : trim($IPAddr);
$this->clientIPAddr = is_null($IPAddr) ? Helpers::getRealIPAddr() : trim($IPAddr);
unset($IPAddr);
return $this->controlIPAddress();
}
private function controlIPAddress() {
foreach ($this->operatorIPAddr as $operatorName => $ipData) {
foreach ($ipData as $IP) {
if (strstr($IP, '/')) {
$_ipData = explode('/', $IP);
$start = ip2long(trim($_ipData[0]));
$end = ip2long(trim($_ipData[1]));
} else {
$start = ip2long($IP);
$end = ip2long($IP);
}
if ((ip2long($this->clientIPAddr) >= $start && ip2long($this->clientIPAddr) <= $end)) {
$this->isMobileOperator = $operatorName;
return $this->isMobileOperator;
}
}
}
}
public static function Run($IPAddr = NULL) {
$operatorController = new operatorController($IPAddr);
if ($operatorController->isMobileOperator !== FALSE)
return $operatorController->isMobileOperator;
else
return FALSE;
}
}
?>Sanıyorum bu PHP ip ye göre algılamayı js ye entegre edemiyceğimiz için ilk verdiğim scripti php olarak yazdırmak istiyorum. 2 verilen scriptteki ip ye göre algılama sistemiyle.
3G , edge uzerinden baglanan kullanicilari ayristirmak.