草庐IT

1Session

全部标签

php - PHP session 是否难以跨分布式系统扩展?

在工作中,我们几乎用Java和perl做所有事情,但我想使用PHP和session构建一个功能。有些人认为尝试在我们的系统上进行PHPsession是个坏主意,因为它分布在许多服务器上。具体问题是什么? 最佳答案 您还可以使用自定义session保存处理程序:http://www.php.net/manual/en/function.session-set-save-handler.php我从来没有尝试过,但是你可以用它来定义你自己的保存/读取函数,这样你就可以实现一个数据库或一个共享的nfs后端,而不需要安装任何扩展。另外,@Er

php - 在 php 中重定向页面后 session 丢失

当我使用phpheader重定向时,所有session变量都丢失了......有人说添加exit();就在标题之后(“”);将解决问题,但它似乎不是解决方案......有人可以帮忙吗?下面是我如何将变量存储到session中:include'dbc.php';$err=array();foreach($_GETas$key=>$value){$get[$key]=filter($value);//getvariablesarefiltered.}if($_POST['doLogin']=='Login'){foreach($_POSTas$key=>$value){$data[$key

php - Zend 框架、 session 和 HttpOnly

我想让我的sessioncookieHttpOnly。基于thisarticle,我将其添加到我的application.ini:resources.session.cookie_httponly=true不幸的是,当我查看Firecookie中的sessioncookie时,它未标记为我指定的HttpOnly。我缺少哪一步? 最佳答案 尝试在Bootstrap中执行Zend_Session::setOptions(array('cookie_httponly'=>true));(在session首次初始化之前的某个地方)它应该与a

session_id() 和 session_start() 的 PHP 逻辑

我继承了以下代码,很有趣。该逻辑似乎要么多余,要么完全错误。//maketheuseofsessionspossible.if(!session_id()){session_start();}但是,它是在一个大规模订阅者系统上,我不愿意改变它。尽管我有PHP经验,但我还是很感谢社区的意见,以确保我没有遗漏任何东西。如果您能提及副作用或深入了解当前代码,则可加分。更新也许逻辑不是正确的词。为什么在调用session_start()之前检查session_id(),因为它总是返回空字符串,因为代码中没有其他地方是session_start()打电话。 最佳答案

PHP - 每个选项卡的 session

是否可以为每个浏览器选项卡创建session?例如,用户在他的浏览器中打开了2个选项卡:标签1和标签2在Tab1他有一个session:$_SESSION['xxx']='lorem';在Tab2中,session是:$_SESSION['xxx']='ipsum';现在刷新时,我需要在事件选项卡中获取当前session。例如,如果用户刷新选项卡2,我需要在加载时获取选项卡2的$_SESSION['xxx'],即“ipsum”。但是$_SESSION['xxx']不应在选项卡1上更改。是否有任何选项可以按选项卡保存session。如果不是,还有哪些其他选项可以处理此问题?感谢您的帮助!

php - 如何在 codeigniter 中关闭浏览器来销毁 session

最近我用codeigniter开发了一个网络应用程序。我在那里严重面临与session相关的问题。问题场景:如果用户A登录到应用程序,则用户ID在session中设置。完成任务后,用户A关闭了浏览器并离开了计算机。过了一会儿,用户B来了,打开浏览器,看到应用程序处于登录状态。或者当用户B写下url并按回车键时,它会直接重定向到应用程序,而无需使用上一个session进行任何身份验证。我为session使用了以下配置:$config['sess_cookie_name']='ci_session';$config['sess_expiration']=1800;$config['sess

php - CodeIgniter 3 和 session

我最近按照本指南更新到CodeIgniter3:CI3:upgrade3.0from2.2.1.我在application/config/config.php文件中设置了这个配置:$config['sess_driver']='files';$config['sess_cookie_name']='ci_session_my_site';$config['sess_expiration']=604800;//1week$config['sess_save_path']=NULL;$config['sess_match_ip']=FALSE;$config['sess_time_to_u

php - 检查 session 是否设置,如果没有创建一个?

我想检查当前是否设置了session,如果没有创建session,请允许页面正常运行(什么都不做)。我看了另一个SO问题,其中发布了以下代码:if(empty($_SESSION['login'])){}else{}最简单的方法是为每个session设置类似$_SESSION['a']的内容,然后运行​​if(empty($_SESSION['a']))检查session是否存在?再一次,您是否可以在不首先调用session_start()的情况下使用session变量,从而使它过时(我昨天试过这个,虽然作为回显,而不是if语句来检查变量是否在没有执行的情况下执行意识到在我可以回显变量

php - codeigniter 中 session 的大小

如何增加session框架CodeIgniter的大小?标准大小是04kb 最佳答案 这与codeignitersession无关,4kb的数据是cookie可以容纳的最大大小。要保存更多数据,请使用数据库(请参阅http://codeigniter.com/user_guide/libraries/sessions.html中的“将session数据保存到数据库”)。 关于php-codeigniter中session的大小,我们在StackOverflow上找到一个类似的问题:

php - Yii session 管理

我正在尝试使用以下代码在Yii中设置一些session变量:$session=newCHttpSession;$session->open();$session->setSessionName('MySession');$session['sleep']=0;$session['attempts']=0;$session->writeSession('sleep','0');$session['ip']=$this->get_ip_address();$session->close();var_dump($session,$session['ip']);但是,我无法设置上面的sessi