我有一个包含用户ID、用户名和密码的mysql表,如果给定的密码与给定的用户名匹配,我将创建3个cookie:用户名用户名userpassword(md5)-我创建它是因为当用户保存重要设置时(不要求用户填写表格)我会从cookie中重新检查密码和用户名。我听说这不安全,我应该只使用cookie来存储sessionID,并将此数据存储在session中,但代码看起来如何?请解释一下代码,因为我是PHP的初学者。哦,我想长期记住用户,我不喜欢每次都需要重新登录的网站。请帮助我并解释为什么一种方法比其他方法更安全?谢谢!感谢您的回答!我需要回答我的问题:我的网站不需要比简单论坛更高的安全性
我正在尝试获取session值并将其存储在变量中。该怎么做?示例:curl_setopt($ch,CURLINFO_HEADER_OUT,true);print_r(curl_getinfo($ch));输出:[request_header]=>POST/customer.jsp?c=4HTTP/1.1Host:webdadasasd.co.ukAccept:*/*Cookie:JSESSIONID=0000-dsfsdfsdf-sdfsdfsd_:fsdfsdfdsContent-Length:54Content-Type:application/x-www-form-urlenco
我将创建一个具有多个子域的站点。例如:shop.domain.comblog.domain.comnews.domain.comaccount.domain.com我想知道session变量是否可以在子域之间传递。例如,$_SESSION['variable']可以在上面列出的所有子域上访问。 最佳答案 您首先必须确保以所有主机都可以访问的方式存储session数据;如果它们托管在同一台机器上,一切都很好,否则您可能想使用另一个session处理程序,例如使用数据库、内存缓存...来存储session数据。然后你必须确保sessio
我想知道session在CodeIgniter中是如何工作的。session是否应该在浏览器关闭时自动销毁?默认情况下,CodeIgniter不会在浏览器关闭时销毁session:$config['sess_expire_on_close']=FALSE;相反,我们可以设置session过期时间:$config['sess_expiration']=7200;现在例如,如果我将过期时间设置为0,只要我不自行销毁,它就会保持session:$this->session->sess_destroy();那么CodeIgniter如何在特定时间内保留session信息,甚至在浏览器关闭之后?
保存sessionID的PHPSESSID变量没有保存到客户端cookie中。这导致我每次调用session_start()函数时都会生成一个新的sessionID。当我使用FireFox、Opera和Chrome时,情况确实如此。对于safari,出于某种原因,此变量已成功保存到cookie中,并且一切正常。编辑:这是我通过phpinfo()进行的session设置:我的网站有一个子域,我想在所有子域中使用相同的session。第二次编辑:当我在我的主域上检查var_dump($_COOKIE);时,我得到了名为PHPSESSID的sessionID,但是当我在子域上这样做时,我得到
我是PHP新手,对cookie了解不多。看来我必须将我的数据存储在cookie中,因为我只是暂时需要这些数据。我已经阅读了一些文章并尝试了其中的一些,但我从中得到了空白结果。这是我的代码:vaccination_record_id.');">'.'';?>vaccination_record_brand;?> 最佳答案 您可以(应该?)为此使用session。Cookie不是临时的,它们存储在客户的计算机上。session是暂时的,它们一直存在,直到您销毁它们。此外,您的PHP中有一些错误(在cookie处理中不是那么多):$_CO
如果我将session.use_cookies的值更改为true或false,我已经四处寻找对phpsession的影响,但是有似乎对它的工作方式没有影响。session.use_cookies在php中有什么用,为什么需要它? 最佳答案 这是您希望在客户端管理您的sessionID的方式,如果设置(默认)sessionID将存储在cookie中,否则它将作为GET变量在url中传递。 关于php-在php中使用session.use_cookies,我们在StackOverflow上找
我有一个项目可以在本地服务器上运行,但不能在我的生产服务器上运行,因为服务器没有看到cookie。我制作了一个最小版本的代码来重现该服务器上的问题:无论我刷新此页面多少次,我总是收到“未找到”消息。每当我尝试记录$_COOKIE变量时,我都会得到一个空数组。然而:cookie存在于浏览器中,并随请求正确发送cookie在同一个文件中设置和读取(这不是路径的问题)setcookie前无输出,文件为UTF8无BOM编码我认为这是服务器配置问题,因为代码在本地运行,但我不知道去哪里查看。有没有人见过这种情况,您知道是什么原因造成的吗?如果您需要更多信息,请告诉我,我会将其添加到我的问题中。谢
在服务器端访问session数据时,它的modified_time被设置,因此将它的过期时间延长到future。但是,这不会发生在PHPSESSIDcookie上。虽然服务器端的session数据过期时间延长了,但cookie过期时间却没有。如果cookie过期,用户将失去他的session-他在发送请求时将没有可提供的sessionID。有没有办法告诉Symfony\Component\HttpFoundation\Session\Session延长cookie过期日期?可以对同一个sessionID执行此操作吗?或者我们是否必须重新生成它(对于许多用户X许多请求来说似乎效率低下)?
我已经很好地设置了一个cookie,并且该cookie位于请求header中,但是当我在PHP超全局$_COOKIE中访问该cookie时,它并未设置。转储$_COOKIE会显示除一个之外的其他cookie,并且所有cookie都在请求header中。如果我转储$_SERVER,我可以在$_SERVER['HTTP_COOKIE']中看到该cookie。PHP将所有cookie设置为$_COOKIE但只有一个。什么可能导致此问题,有什么解决办法?服务器正在运行PHP5.3.3。更新:在我的index.php的顶部,我var_dump($_SERVER);然后是var_dump($_