页面中新链接中的当前 URL 参数
Posted
技术标签:
【中文标题】页面中新链接中的当前 URL 参数【英文标题】:Current URL parameter in a new link in the page 【发布时间】:2016-04-23 17:22:30 【问题描述】:我正在为我的博士研究创建一个网站。 我有同一个网页的多个版本(不同颜色、不同长度……),每个版本都有url参数。
我想在每个页面的底部创建一个链接,该链接会重定向到问卷调查网站,但会自动检索其所在页面的网址参数。
示例
当前网址是:
http://abcmessage.com/abc?message=1&color=blue&lenght=small
您点击链接,它会将您带到问卷网站,并保留参数:
http://questionnaire.com/abc?message=1&color=blue&lenght=small
我应该在我的重定向链接旁边放什么来做到这一点?
我在下面找到了,但它并没有真正起作用:
$text = '?';
$c = 0;
foreach($_GET as $k => $v)
$text .= ($c>0) ? "&$k=$v" : "$k=$v";
$c++;
$text = ($text=='?') ? "" : $text;
echo $text;
我不得不承认我对php 和Java了解不多,但是我正在自己工作并且必须完成工作,所以我会学习。所以非常感谢任何能提供帮助的人:)
干杯!
昏暗
【问题讨论】:
JAVA 不是 javascript! 【参考方案1】:试试location.seach:
<a href="#"
onclick="this.href='http://questionnaire.com/abc'+window.location.search">Questionnaire</a>
【讨论】:
这就像一个魅力。非常感谢@mplungjan!【参考方案2】:您可以使用http_build_query()
可以这样做:
all_requests = $_GET;
$build_query_http = http_build_query($all_requests);
echo "http://questionnaire.com/abc?" . $build_query_http;
或者您甚至可以在传递之前删除所有空请求:
foreach ($all_requests as $key => $var_val)
if(empty($var_val) || $var_val=='')
unset($all_requests[$key]);
值得关注maximum length of a query string。
【讨论】:
我尝试了该解决方案,但不知道如何正确实现该代码。无论如何感谢您的帮助。以上是关于页面中新链接中的当前 URL 参数的主要内容,如果未能解决你的问题,请参考以下文章