首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php变量(website.com/?f="123")保存到数据库并重定向

php变量(website.com/?f="123")保存到数据库并重定向
EN

Stack Overflow用户
提问于 2011-07-06 22:47:09
回答 3查看 204关注 0票数 0

我以前从来没有编写过php,我真的需要这个非常简单的脚本。

所以让我来解释一下我需要什么。用户通过联盟链接来我的网站,所以当他们完成重定向的网址将看起来像这样

代码语言:javascript
复制
http://website.com/lp/index.html?sub=1&customer_id=1039be6e23b4420c3e1063dc44a04d

现在我在我的网站上有一个下载链接,点击下载,检查数据库中重复的ip地址。如果不是,请从地址栏复制捕获sub="“& customer_id="”。使用IP地址保存到数据库(此地址用于跟踪)

并立即重定向到下载链接

如果ip不重复

代码语言:javascript
复制
 http://dl.website.com/download/downloadpop.aspx?id={Customer_id}

如果它是重复的

代码语言:javascript
复制
http://dl.website.com/download/downloadpop.aspx?id=beenbefore

非常感谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-06 22:52:48

这是相当宽泛的,如果不知道数据库结构的任何细节,就不可能正确地回答,但这里是如何工作的基本原理:

代码语言:javascript
复制
<?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();
票数 1
EN

Stack Overflow用户

发布于 2011-07-06 22:51:16

你可能需要重定向的头文件:

http://php.net/manual/en/function.header.php

以及用于数据库的mysql_connect、mysql_query等:

http://php.net/manual/en/book.mysql.php

您可以从$_GET中提取GET params:

http://php.net/manual/en/reserved.variables.get.php

请注意,对header()的任何调用都必须发生在其他输出之前(请参阅链接页面上的示例)。

票数 2
EN

Stack Overflow用户

发布于 2011-07-06 22:51:26

首先,你可以使用access these variables via $_GET()

接下来,你是INSERT them into a database using PDO

最后,您可以使用适当的header()重定向某人

代码语言:javascript
复制
header('Location:http://dl.website.com/download/downloadpop.aspx?id=beenbefore');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6598342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档