颠倒的 cookie 名称和值

reversed cookie name and value

我需要完成一项网络编程作业 class,我需要使用 php 创建一个“记住牛奶类型”的应用程序,现在我正在尝试解决我的 cookie/session 问题。我还使用 firebug 检查它,它显示名称作为值和值作为 cookie 名称。此外,我必须阅读 [= 的表格16=]数据,然后传给cookie保存,这是我的.php

中cookie相关的代码
label>Username :</label>
<input id="name" name="username" placeholder="username" type="text">
<label>Password :</label>
<input id="password" name="password" placeholder="password" 
 type="password">
<input name="submit" type="submit" value=" Login ">
<?php
setcookie($username,'username');
setcookie($password,'password');

?>

我知道这听起来像是补救性问题,我讨厌浪费你们的时间,但我不知道还能去哪里找。我在页面顶部也有一个 sesssionstart(),我对此有疑问。我知道要声明一个会话变量,我需要调用 $_SESSION = name,但这是否像 cookie 一样工作,但数据保存在服务器上还是什么? 有人也可以清楚地解释会话的工作原理吗?

cookie 和会话的主要区别在于,cookie 存储在用户的浏览器中,而会话则不然。这种差异决定了它们的最佳用途。

Cookie 可以将信息保留在用户的浏览器中,直到被删除。如果某人有登录名和密码,则可以在他们的浏览器中将其设置为 cookie,这样他们就不必在每次访问您的网站时都重新登录。您几乎可以在浏览器 cookie 中存储任何内容。

麻烦在于用户可以随时阻止或删除 cookie。例如,如果您网站的购物车使用了 cookie,而有人将浏览器设置为阻止它们,那么他们将无法在您的网站购物。

会话不依赖于允许 cookie 的用户。它们的工作方式类似于令牌,允许在用户打开浏览器时访问和传递信息。会话的问题在于,当您关闭浏览器时,您也会丢失会话。因此,如果您有一个需要登录的站点,则无法像将其保存为 cookie 那样将其保存为会话,并且用户每次访问时都将被迫重新登录。

您当然可以两全其美!了解各自的作用后,您可以结合使用 cookie 和会话,使您的网站完全按照您希望的方式运行。

会话变量存储在服务器中,无法被客户端操作。另一方面,Cookie 存储在客户端,易于访问且不安全(除非加密)。 会话变量将在整个会话期间持续存在,一旦您关闭该会话(通常是注销或超时),它们就会丢失。