【发布时间】:2018-07-20 08:48:24
【问题描述】:
我有一些 PHP 代码创建一个 cookie 并将 URL 的一部分保存为一个值,然后调用为链接的一部分。问题是我做什么并不重要,当我需要链接到不同的域时,链接包含相对路径。
if (!(isset($_COOKIE['my_cookie']) || isset($_COOKIE['other_cookie']))) {
if (is_page([2641,2998,2949])) {
$this_cookie = "my_cookie";
$cookie_value = (!empty($_SERVER['HTTPS']))
? "https://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']
: "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
$path = "/";
setcookie($my_cookie, strstr($cookie_value, '?'), time() + (86400 * 28), $path);
$url_link = "https://newdomain/" . $cookie_value;
}
cookie_value 是 '?myaddress/tobe/included'
链接变为:https://newdomain/https://oldomain/?myaddress/tobe/included
非常感谢任何帮助。
【问题讨论】:
-
有什么问题?网址链接中还有另一个
https:/? -
也许使用正确的格式?
https:/newdomain/->https://newdomain/ -
@kerbholz 请原谅错别字。我编辑了它们。无论出于何种原因,当需要转到另一个网页/地址(新域)时,该链接只想包含当前 URL(oldomain)。它吐出两个网址
-
您说
$cookie_value是?myaddress/tobe/included,但这是不对的——您在发布代码的第 7-8 行将其设置为完整地址。 -
@zenzelezz 是的,所以我抓取了整个地址,然后在设置 cookie 时将其删除
标签: php hyperlink relative-path