传递URL特殊字符时出现问题-单击计数器php脚本

传递URL特殊字符时出现问题-单击计数器php脚本,php,mysql,Php,Mysql,脚本的目标:获取正在传递的URL和AdID,并在数据库中对其进行计数,然后将用户传递到传递的URL 它的工作原理:一旦链接被传递到脚本,它将接受AdID并记录数据库行+1中的单击,然后将它们重定向到链接。 数据库布局: 表:广告 行:单击 传递的链接示例: 问题:它不会传递任何包含特殊字符的url。像这样吗?或者& 明显的问题:仍然使用mysql\u查询。我还没有完全学会mysqli的新方法 故障链接示例: 对他人有益:其他人可以使用此脚本执行我正在执行的操作。计算链接/广告/任何u

脚本的目标:获取正在传递的URL和AdID,并在数据库中对其进行计数,然后将用户传递到传递的URL

它的工作原理:一旦链接被传递到脚本,它将接受AdID并记录数据库行+1中的单击,然后将它们重定向到链接。 数据库布局:

  • 表:广告
  • 行:单击
传递的链接示例:

问题:它不会传递任何包含特殊字符的url。像这样吗?或者&

  • 明显的问题:仍然使用mysql\u查询。我还没有完全学会mysqli的新方法
故障链接示例:

对他人有益:其他人可以使用此脚本执行我正在执行的操作。计算链接/广告/任何url被单击的次数,以测量链接/广告的使用率/单击次数

<?php
require('config.php');

    // Update Ad Pull/Display count
    $AdID= mysql_real_escape_string($_GET['AdID']);
    $UpdateADHitDisplay = mysql_query("UPDATE ads SET clicks = clicks +1 WHERE ID = '$AdID'");

    // Get Redirection Inforamtion
    $RedirectURL = mysql_real_escape_string($_GET['RedirectURL']);
    header("Location: $RedirectURL");

?>
}
标题(“位置:$RedirectURL”)

链接中参数RedirectURL的值必须为,并且在
mysql\u real\u escape\u string()
中没有必要使用
$RedirectURL
变量

似乎此mysql\u real\u escape\u string调用是毫无意义的,并导致了问题。
// Get Redirection Inforamtion
$RedirectURL = $_GET['RedirectURL'];
//$FixedURL = urlencode($RedirectURL); // didn't work
    function url_encode($RedirectURL){ // then i tried to create a function. it pases the first part of the url, but nothing past the first ? or special char
 return urlencode(utf8_encode($RedirectURL));