反转的cookie名称和价值

时间:2015-05-04 06:37:25

标签: php cookies session-cookies

我需要为网络编程课程完成一项任务,我需要使用php创建一个“记住牛奶类型”的应用程序,现在我正在尝试解决我的cookie /会话问题。我是还使用firebug来检查它,它显示名称作为值和值作为cookie名称。此外,我必须读取用户名/密码数据的表单,然后将其传递给要保存的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,但数据是保存在服务器上还是什么?  有人也可以清楚地解释会议的运作方式吗?

2 个答案:

答案 0 :(得分:1)

Cookie和会话之间的主要区别在于Cookie存储在用户的浏览器中,而会话则不存储。这种差异决定了每种方法的最佳用途。

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

麻烦的是,用户可以随时阻止cookie或删除它们。例如,如果您的网站的购物车使用了Cookie,并且某人将其浏览器设置为阻止它们,则他们无法在您的网站上购物。

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

你当然可以充分利用这两个世界!一旦你知道每个人做了什么,你就可以使用cookie和会话的组合,使你的网站完全按照你想要的方式工作。

答案 1 :(得分:0)

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