繁体   English   中英

如何在禁用cookie时访问php会​​话?

[英]How to access php sessions when cookies disabled?

我为客户建立的电子商务系统存在问题,其中一些订单空白。 我添加了代码来检查是否正在设置会话,并且没有在某些订单上设置它们,这就是它出现空白的原因。

我使用会话的原因是存储订单信息

例如: $_SESSION['data']=$_POST;

我只能假设用户在浏览器中禁用了cookie,并且想知道如何解决这个问题。

我想做的是检查cookie是否启用,如果没有通过$_GET发送会话ID,但如何使用会话ID访问$_SESSION['data']

所以我的问题是:

如何检查cookie是否已启用以及是否通过get发送会话ID以及如何使用会话ID访问$_SESSION['data']

例如,您必须手动打开会话管理器

<?
session_id($_GET['session_id']); 
session_start();
//you can now acccess $_SESSION['data']

您可以在php.ini中设置session.use_trans_sid,它将通过GET或POST自动附加会话ID

它通过在php.ini中再次根据url_rewriter.tag条目自动重写某些元素(如href)来实现此目的。

请注意,使用Cookie通常更可取,因为在网址中存储会话ID会导致用户无意中与其他人共享会话ID

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM