Я сделал сайт отслеживания в php, который отслеживает количество кликов по определенной ссылке - для отслеживания партнерских ссылок. что я делаю:Отслеживание числа кликов по ссылке - php
Когда пользователь нажимает на ссылку, предоставленную моим сайтом, он переходит на мой сайт, который после записи своего IP-адреса перенаправляет пользователя на другой адрес, сопоставленный с пользователем, нажатым на ссылку. Счетчик увеличивает количество кликов после проверки ip.
Проблема, с которой я столкнулся, заключается в том, что когда я сравниваю количество кликов на своем веб-сайте и результаты в facebook, мой результат во много раз больше. Я не знаю, в чем причина этого.
Мои результаты:
Результаты Facebook:
Мой вопрос заключается в том, что почему существует разница? если в facebook есть некоторые дополнительные проверки, кто-то знает, что это такое? или они частные? или facebook просто уменьшает количество кликов?
Помощь была бы действительно оценена. Я застрял здесь.
Вот мой код, чтобы проверить посетитель IP и увеличивает счетчик кликов:
<?php
require_once "dbdata.php";
if(isset($_GET['linkid']) && !empty($_GET['linkid'])){
$id = $_GET['linkid']; //getting link id to fetch data from database
$ip = $_SERVER['REMOTE_ADDR']; // getting visitors ip address
//database connection
@$db = new mysqli(hostname,username,password,dbname) or die(json_encode(array("status"=>"Can not connect (Database Connection Error)")));
//getting data from table
$query = "select * from links_shared where id = $id ;";
$result_link = $db -> query($query) or die(json_encode(array("status"=>"Error Fetching previous income data")));
$row_link = $result_link-> fetch_assoc();
$link = $row_link['orignal']; //the link to be redirect the user to
header("Location:".$link); //redirected
if($row_link['status'] == "live"){ //status of link should be live
$array_ip = explode(",", $row_link['ip']); //comma sepearted string of ips to array
if(!in_array($ip, $array_ip)){ //check if ip is not already present
$query = "select * from links_deleted where url = '$link' ;"; //getting block list
$result_del = $db -> query($query) or die(json_encode(array("status"=>"Can not select deleted")));
if($result_del -> num_rows <1){ //check if link not in block list
$concat = ",".$ip;
echo $query = "update links_shared set clicks = (clicks + 1), ip = concat(ip,'$concat') where id= $id; ";
$result_update = $db -> query($query) or die(json_encode(array("status"=>"can not update clicks")));
}
}
}
}
?>
Могу ли я показать вам сценарий, отредактировав вопрос? thnx для ответа :) – hamza
@hamza вы можете добавить его в свой вопрос, и кто-то может заметить что-то, что поможет вам его улучшить. – BeetleJuice
Я точно буду ... thnx ....... – hamza