Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 根据URL中的变量将流量重定向到2个不同的URL_Php_Redirect - Fatal编程技术网

Php 根据URL中的变量将流量重定向到2个不同的URL

Php 根据URL中的变量将流量重定向到2个不同的URL,php,redirect,Php,Redirect,我对php非常陌生,但我会尽力解释。我有一个页面,我想根据流量/广告url中的变量将用户发送到不同的url。首先,我有一个我的流量的URL,它是www.testing.com?adid=hello,然后我在我的登录页上有每个按钮的点击链接,这里我想放一个脚本,如果adid=hello,将它们发送到URL x,但是如果adid为空或者adid甚至不存在于URL中(因为它不会用于有机流量),那么将它们发送到页面y 这就是我现在拥有的: <?php $adid= $_GET['adid'];

我对php非常陌生,但我会尽力解释。我有一个页面,我想根据流量/广告url中的变量将用户发送到不同的url。首先,我有一个我的流量的URL,它是www.testing.com?adid=hello,然后我在我的登录页上有每个按钮的点击链接,这里我想放一个脚本,如果adid=hello,将它们发送到URL x,但是如果adid为空或者adid甚至不存在于URL中(因为它不会用于有机流量),那么将它们发送到页面y

这就是我现在拥有的:

<?php
$adid= $_GET['adid'];

if($adid == 'hello'){
header("Location: http://www.x.com");

}else {
header("Location: http://www.y.com/");
}
?>

我认为按钮上的链接应该是www.testing.com/redirect.php?adid={adid},但是我没有从第一个链接中得到任何关于{adid}的值。请帮忙


<?php
$adid = ""; // initialize variable with blank  value

if(isset($_GET['adid'])) // check if is send through get
{
    $adid= trim($_GET['adid']); // assign value to variable
}   

if($adid == 'hello'){
    header("Location: http://www.x.com");
    exit;
}else {
    header("Location: http://www.y.com/");
    exit;
}
?>

我添加了代码,但仍然无法访问x.com。我先是用link?adid=hello输入的,然后用link redirect.php?adid={adid}输入的,但它似乎没有在第二个链接上获取值“hello”,它仍然会带我去y.com。所以我基本上需要知道在按钮链接上放什么URL。谢谢你的帮助。是的,我不认为问题在于代码,我认为问题在于我在按钮链接上使用的URL,它应该是redirect.php还是我必须添加adid值,比如redirect.php?adid={adid}或者类似的东西?我不能向所有链接添加“hello”,因为这会将所有用户发送到x.com.Link on按钮是:…/test.php?adid={adid}。我使用的跟踪软件(voluum)刚刚告诉我,您还不能在单击跟踪链接中传递动态值。也许这就是为什么这不起作用。我问voluum,他们回答说:“好的,我现在明白了。所以现在这是不可能的(意思是传递变量来点击链接),你可以创建你自己的工具,它的工作原理如下:着陆器将重定向到你自己的网站”www.xxx.com,它将使用双元刷新,这将重定向到带有voluum/click URL的html。或者,您可以使用302重定向,从您的站点(www.xxx.com)重定向到带有/click跟踪链接和添加的voluum数据(so/click?voluumdata)的html。这是您可以测试的,并且可能有效。”单击按钮/链接后,浏览器地址栏上显示的URL是什么?如果我访问按钮链接redirect.php?adid={adid}我来到y.com。我希望将值“hello”放在{adid}因为它是在第一个链接中设置的,所以它应该把我带到x.com,但是它没有。如果我把redirect.php?adid=hello放在这里,那么它就把我带到x.com。你能为你提到的按钮/链接添加一段代码吗?你发布的php片段会起作用。问题是你如何定义按钮/链接的URL。不确定是什么你的意思是,按钮/链接的代码是上面的代码(或者下面的代码,我也测试过)。同样,我认为问题在于我在按钮上使用的链接(现在是redirect.php?adid={adid}),它似乎没有将adid从第一个链接传递到第二个链接。谢谢。