如何在页面刷新之前显示 Cookie 值


How to show cookie value before page refresh

晚上好。

我在饼干设置方面有问题。我需要设置 cookie"shid"(用户 ID)并在第一次访问时使用它。因为它是一个页面网站,我需要一个链接的cookie值。访问者可以单击"开始聊天"链接,它看起来像这样:chat.php?user_id=<? echo $_COOKIE['shid']; ?>。但是在第一次访问时,"shid"是空的。如何在首次访问时设置该cookie,该用户无需刷新页面即可正确使用聊天?

谢谢!

这是完整的代码:

<?php
  $sid = mt_rand();
    $cookie_name = "shid";
    if (!isset($_COOKIE['shid'])) {
    setcookie("shid", $sid, time()+60*60*24*100, "/");
}
?>
<a class="chat1" href="chat.php?user_id=<? echo $_COOKIE['shid']; ?>"></a>

只需定义它。 $_COOKIE['name'] = 'value';

我还使用isset()在尝试输出数组值之前验证数组值是否存在(如果数组不存在,这将避免讨厌的E_NOTICE)。

<?php
  $sid = mt_rand();
    $cookie_name = "shid";
    if (!isset($_COOKIE['shid'])) {
    $time = time()+60*60*24*100;
    setcookie("shid", $sid, $time, "/");
    $_COOKIE['shid'] = $time;
}
?>
<a class="chat1" href="chat.php?user_id=<? echo( isset( $_COOKIE['shid'] ) ? $_COOKIE['shid'] : '' ); ?>"></a>