php - 重定向页面无法正常工作 - 获取数据并重定向
问题描述
我正在尝试在访问者和内容之间建立一个中间页面,以获取内容的数据进行统计。
但是有些东西不能正常工作,一些条目没有计算在内,也没有重定向。包括代码。
可能有更好的方法来保存和重定向。
我希望通过新代码或用户代理类问题获得我的问题的最佳解决方案。
//Vars
$database = new Database();
$db = $database->getConnection();
include("../../includes/functions.php");
$BNL = new MBNL();
$ua = new Browser();
if(isset($_GET['id']) AND !empty($_GET['id'])) {
try {
$id = $BNL->protect($_GET['id']);
$select = $db->query("SELECT `default_cost`,`url`,`id` FROM `links` WHERE `unique_id` = '{$id}'");
if ($select->rowCount() > 0) {
$row = $select->fetch();
$url = $row['url'];
$ip = getIP();
$useragent = $_SERVER['HTTP_USER_AGENT'];
$host_name = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$browser = $ua->getBrowser();
$browser_version = $ua->getVersion();
$os = getOs();
$ip_info = ip_info($ip);
if(isset($_GET['data1'])) {
$data1 = $BNL->protect($_GET['data1']);
} else { $data1 = "";}
if(isset($_GET['data2'])) {
$data2 = $BNL->protect($_GET['data2']);
} else { $data2 = "";}
if(isset($_GET['data3'])) {
$data3 = $BNL->protect($_GET['data3']);
} else { $data3 = "";}
if(isset($_GET['data4'])) {
$data4 = $BNL->protect($_GET['data4']);
} else { $data4 = "";}
if(isset($_GET['data5'])) {
$data5 = $BNL->protect($_GET['data5']);
} else { $data5 = "";}
if(isset($_GET['country'])) {
$country = $BNL->protect($_GET['country']);
}
if(isset($_GET['ip'])) {
$ip = $BNL->protect($_GET['ip']);
}
$stmt = $db->prepare("INSERT INTO `entries` (`link_id`, `ip`, `country`, `city`, `country_code`, `os`, `browser`, `browser_version`, `hostname`, `useragent`, `data1`, `data2`, `data3`, `data4`, `data5`, `default_cost`, `timestamp`) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
$stmt->execute(array($row['id'], $ip, $ip_info['country'], $ip_info['city'], $ip_info['country_code'], $os, $browser, $browser_version, $host_name, $useragent, $data1, $data2, $data3, $data4, $data5, $row['default_cost'], time()));
}
} catch (Exception $e) {
$stmt = $db->prepare("INSERT INTO `test` (`ip`, `timestamp`) VALUES(?, ?)");
$stmt->execute(array( $_SERVER['REMOTE_ADDR'], time()));
}
echo '<head><META http-equiv="refresh" content="0;URL='.$url.'"></head>';
}
解决方案
推荐阅读
- apache-kafka - Kafka提供Zookeeper vs单独下载
- api - Api 调用所有 iTunes 商店
- python - 将输入字段的值传递给烧瓶过滤器
- firebase - Firebase 云函数在最初调用函数时使用当前值而不是值
- ios - 如何知道 FirebaseApp.configure() 何时完成?
- r - 计算数据框中所有组对的 cohens d
- python - 如何在 Python 中进行组合和随机样本
- jenkins - 如何在条件步骤中使用声明的变量?
- c# - 如何从单独的游戏对象位置控制着色器中的属性?
- wcf - 使用 SOAPUI 使用相互证书身份验证测试 WCF