1

我有一个网站,其内容因市场位置而异,因此我正在为用户位置设置 cookie。如果用户尝试直接访问登录页面,我想将市场位置插入 URL。

例如,如果用户尝试访问,www.mysite.com/packages我想将 URL 更新为www.mysite.com/tampa/packages

我有一个名为“market”的 cookie 集,这是我正在尝试的代码,但它不起作用。

<?php
switch ($_COOKIE['market']) {

  case "tampa":
    $url = $_SERVER['REQUEST_URI'];
    switch (true) { 
      case strstr($url, 'packages'):
        $currenturl = str_replace('/packages','/tampa/packages/',$url);
        return $currenturl;
        break;
    }
    break;

  // etc for other markets
}

PHP 是正确的方法吗?有更好的解决方案吗?预先感谢您的任何帮助。

4

1 回答 1

0

您需要使用header()函数重新加载带有新 URL 的网页,如下所示:

代替:

return $currenturl;

做:

Header('Location: '.$currenturl);

确保在这样做之前没有输出到浏览器。

于 2015-03-28T14:44:49.633 回答