当用户使用我的网站时,如何在用户浏览器中使用 php 启用 cookie [重复]

Posted

技术标签:

【中文标题】当用户使用我的网站时,如何在用户浏览器中使用 php 启用 cookie [重复]【英文标题】:how to enable cookies with php in users browsers when they using my website [duplicate] 【发布时间】:2017-12-20 11:32:39 【问题描述】:

我正在使用会话来存储用户的登录和注册数据。如果 cookie 在用户的浏览器中关闭,则它不起作用。

如果他们的 cookie 关闭,是否可以向他们显示一条消息,并让他们选择按确定以启用它,或者有其他方法来解决这个问题。

【问题讨论】:

答案开启:***.com/questions/6663859/… 【参考方案1】:

最简单的方法是设置一个 cookie 并使用 phpisset 来查看它是否存在,但出于安全目的,您不能为用户更改它。不管怎样,这里有一种方法可以查看是否启用了 cookie。

设置cookie:

<?php
    setcookie(name, value, time() + (86400 * 30), "/");
    header("Location: cookieCheck.php");
?>

cookieCheck.php:

<?php
    if(!isset($_COOKIE['name'])) 
        echo "Cookies are not enabled on your browser, please turn them on!";
    
?>

希望对您有所帮助!

【讨论】:

【参考方案2】:

如果用户在浏览器中关闭了 cookie,则服务器无法打开它们。是的,您可以提示用户更改他们的设置,但您的代码将无法做到这一点。

如果他们关闭了 cookie,您需要将会话 ID 作为 GET 参数传递 - 包括所有安全问题等。您最好告诉他们(在您的提示中)“看,您真的需要启用了 cookie,或者网站无法正常运行 - 您将无法登录,等等。”

【讨论】:

是否可以给他们确定按钮,如果他们点击它,cookie 将被启用? 您可以向他们提供有关如何在浏览器中启用 cookie 的说明(他们可能使用的每个浏览器都有不同的方向,祝您好运),但是不,您不能从服务器打开 cookie或更改浏览器中的任何其他用户可配置设置。如果可以的话,这将是浏览器设计中的一个MAJOR安全漏洞。

以上是关于当用户使用我的网站时,如何在用户浏览器中使用 php 启用 cookie [重复]的主要内容,如果未能解决你的问题,请参考以下文章

当用户从移动设备或计算机请求时如何动态加载我的网站

当用户导航到 ASP.NET 网站时使用哪个帐户?

当用户在浏览器选项卡中手动更改 url 时,防止在 React 中路由

如何使用 websocket 安全地将我的 cli 应用程序连接到网站

.htaccess 规则在用户使用站点时使站点脱机

如何在网站上管理多个州?