我之前从未编写过php,我真的需要这个非常简单的脚本。
让我解释一下我需要什么。 用户通过会员链接访问我的网站,以便他们完成重定向 网址将如下所示
http://website.com/lp/index.html?sub=1&customer_id=1039be6e23b4420c3e1063dc44a04d
现在我的网站上有一个下载链接 在下载点击 检查数据库中的重复IP地址。如果不重复 capture sub =“”&来自地址栏的customer_id =“”。 使用IP地址保存到数据库(这用于跟踪)
并立即重定向到下载链接
如果ip没有重复
http://dl.website.com/download/downloadpop.aspx?id={Customer_id}
如果它是重复的
http://dl.website.com/download/downloadpop.aspx?id=beenbefore
非常感谢你!
答案 0 :(得分:2)
您可能需要重定向标题:
http://php.net/manual/en/function.header.php
和mysql_connect,mysql_query等用于DB的东西:
http://php.net/manual/en/book.mysql.php
您可以从$ _GET中提取GET参数:
http://php.net/manual/en/reserved.variables.get.php
请注意,对header()的任何调用都必须在其他输出之前进行(请参阅链接页面上的示例。)
答案 1 :(得分:1)
这是相当广泛的,如果不了解有关数据库结构的任何细节,就无法正确回答,但这里的基础知识将如何运作:
<?php
$sub = $_GET['sub'];
$customer_id = $_GET['customer_id'];
$ip = $_SERVER['REMOTE_ADDR'];
$db = mysql_connect(...) or die(mysql_error());
$quoted_sub = mysql_real_escape_string($sub);
$quoted_customer_id = mysql_real_escape_string($customer_id);
$quoted_ip = mysql_real_escape_string($ip);
$sql = "SELECT count(*) AS cnt FROM yourtable WHERE ip_address = '$quoted_id'";
$result = msyql_query($sql) or die(mysql_error());
$row = mysql_fetch_assoc($result);
if ($row['cnt'] == 0) {
$enc = urlencode($customer_id);
... IP isn't in the database, so do the insert stuff ...
header(" http://dl.website.com/download/downloadpop.aspx?id=$enc");
} else {
header("Location: http://dl.website.com/download/downloadpop.aspx?id=beenbefore");
}
exit();
答案 2 :(得分:0)
首先,你可以access these variables via $_GET()
。
接下来,你INSERT them into a database using PDO。
最后,您可以使用相应的header()
重定向某人:
header('Location:http://dl.website.com/download/downloadpop.aspx?id=beenbefore');