【发布时间】:2019-01-31 04:17:27
【问题描述】:
我的网站有多个位置,每个位置都有自己的一组信息。当用户访问公司主页时,不会显示位置信息。当用户然后转到位置页面时,我设置了一个 cookie。
$location_address = get_field('location_address','options');
$location_city = get_field('location_city','options');
$location_state = get_field('location_state','options');
$location_zip_code = get_field('location_zip_code','options');
$location_phone_number = get_field('location_phone_number','options');
// cookie will expire when the browser close
setcookie("locationAddress",$location_address);
setcookie("locationCity",$location_city);
setcookie("locationState",$location_state);
setcookie("locationZipcode",$location_zip_code);
setcookie("locationPhone",$location_phone_number);
cookie 在 firebug 控制台中显示我的位置信息。但是,发生的事情是当我去另一个位置时,它会同时抓取两组 cookie。我需要它来用新的 cookie 替换之前设置的 cookie。
这也是我输出 cookie 的代码,它似乎也被破坏了:
<div class="top_contact">
<p><?php if(!isset($_COOKIE[$location_address])) { echo "" . $location_address . "";} ?>, <?php if(!isset($_COOKIE[$location_city])) { echo "" . $location_city . "";} ?> <?php if(!isset($_COOKIE[$location_state])) { echo "" . $location_state . "";} ?> <?php if(!isset($_COOKIE[$location_zip_code])) { echo "" . $location_zip_code . "";} ?> | <span class="top_phone"><?php if(!isset($_COOKIE[$location_phone_number])) { echo "" . $location_phone_number . "";} ?></span> </p>
</div>
【问题讨论】:
-
多个地点?你是什么意思?多个子域?你能解释一下吗?
-
是的,我正在使用 wordpress 多站点作为位置页面。所以我有一个公司主站点,然后是子文件夹中的多个站点。例如,您访问 domain.com,然后访问 domain.com/los-angeles。当您返回 domain.com 时,地址和电话号码将跟随您。然后,如果我先访问 domain.com/las-vegas,然后再返回 domain.com,则洛杉矶信息将被替换为 las-vegas 信息。有意义吗?
标签: php cookies session-cookies setcookie