[英]Outbound affiliate links: Nth click goes to house
PHP或JQuery的出站链接每N次点击就更改一次。
例如:
Visitor1点击LinkA-他们被带到http://google.com
Visitor2单击LinkA-他们将转到http://google.com。
Visitor3单击LinkA-他们被带到http://google.com
Visitor4单击LinkA-他们被带到http://yahoo.com
Visitor5点击LinkA-他们被带到http://google.com
Visitor6单击LinkA-他们将转到http://google.com。
Visitor7点击LinkA-他们被带到http://google.com
Visitor8单击LinkA-他们被带到http://yahoo.com
Visitor9单击LinkA-他们被带到http://google.com
Visitor10单击LinkA-他们被带到http://google.com
Visitor11单击LinkA-他们被带到http://google.com
Visitor12单击LinkA-他们被带到http://yahoo.com
有什么好的方法可以做到这一点?
最明智的方法是在PHP中执行此操作-因为您需要确保对点击次数进行全局计数,因此您不能在客户端中执行此操作。
因此,您的原始页面将具有以下内容:
<a href="/forward.php?id=1">site 1</a>
<a href="/forward.php?id=2">site 2</a>
<a href="/forward.php?id=3">site 3</a>
<a href="/forward.php?id=4">site 4</a>
让您的PHP文件记录点击次数,并基于此返回位置。 伪代码中是这样的:
// connect to database
// find the count of clicks for site with id=X, and increment it
// if clicks % N == 0
// redirect to http://example.com/
// otherwise
// redirect to http://example.org/
重定向应该很简单:
<?php
header( 'Location: http://example.com/' ) ;
?>
您的数据库将具有一个类似以下的表:
[link id][click count]
您也可以在其中具有链接目标,但这可能比您需要的复杂。
没有简单的方法可以在客户端上执行此操作。 请记住,jQuery在客户端而不是服务器上运行。 每个访问者都从服务器获取文件。 客户端无法相互通信。
有两种解决方法,非客户端方法更容易。 对于该链接,请在服务器上放置一个URL,然后在服务器上检查是否要将客户端重定向到哪里,并将重定向发送回浏览器以转到目标。
使用jQuery的硬客户端方式将如下所示:当用户单击链接时,执行ajax调用以查看重定向的位置,然后从本地客户端加载该页面。
两种方式都涉及让服务器跟踪已请求的点击次数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.