<?php
include '../db.php'; // подключаемся к БД
//Узнаем IP-адрес пользователя
$client = @$_SERVER['HTTP_CLIENT_IP'];
$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
$remote = @$_SERVER['REMOTE_ADDR'];
if(filter_var($client, FILTER_VALIDATE_IP)) $ip = $client;
elseif(filter_var($forward, FILTER_VALIDATE_IP)) $ip = $forward;
else $ip = $remote;
//Юзер Агент
$user_agent = $_SERVER["HTTP_USER_AGENT"];
// Ищем сокращение в БД и присваеваем ссылку
$querys = mysqli_query($db, "SELECT * FROM linked WHERE url='".$_GET['l']."'");
$rows = mysqli_fetch_array($querys);
$linked = $rows['link'];
//Записываем клик в БД
mysqli_query($db,"SET AUTOCOMMIT=0");
mysqli_query($db,"START TRANSACTION");
$query = "INSERT INTO clicks (click_id, click_count, link_id, click_time, click_ip, user_agent) VALUES ('','+1','".$rows['id']."',NOW(),'".$ip."', '".$user_agent."')";
mysqli_query($db, $query);
$query = "UPDATE linked SET count=count+1 WHERE id=".$rows['id']."";
mysqli_query($db, $query);
mysqli_query($db,"COMMIT");
// Если ссылка есть переадресовывем, если нет выводим
if(isset($_GET['l']) && array_key_exists($rows, $linked)){
header("HTTP/1.1 301 Moved Permanently"); // отправляем заголовок состояния (в нашем случае - это редирект 301)
header("Location: $linked"); // редирект на ссылку с БД
}
else{
header("HTTP/1.1 301 Moved Permanently"); // отправляем заголовок состояния (в нашем случае - это редирект 301)
header("Location: $link"); // редирект на Дефолтную ссылку
}
?>