草庐IT

interactive-session

全部标签

php - 页面重定向后在 session_start() 上删除的 session 数据

经过大量调试后,问题似乎(令人尴尬地)出现在我的数据库session代码中,而不是典型的session问题。你可以看到我的相关回答here-谢谢我知道这可能是类似问题的重复(例如one、two、three),但尽管遵循了这方面的最佳实践,但我仍然遇到问题。当使用session_set_save_handler()来使用我的数据库session类时,session数据在从session1.php重定向后在session2.php上开始时被清除。我的观察概述:session1.php中数据正确存入数据库session2.php中的session_start()数据丢失在重定向之后和在ses

python - 此线程本地 Flask-SQLAlchemy session 是否会导致 "MySQL server has gone away"错误?

我有一个运行独立于用户session的长时间作业的Web应用程序。为实现这一点,我有一个线程本地Flask-SQLAlchemysession的实现。问题是一天几次,当我访问我的站点时,我收到MySQL服务器已消失错误。该网站总是在刷新时加载。我认为问题与这些线程本地session有关,但我不确定。这是我对线程本地session范围的实现:@contextmanagerdefthread_local_session_scope():"""Providesatransactionalscopearoundaseriesofoperations.Contextislocaltocurren

php - 在数据库表中存储 session 不起作用(使用 Zend_Session_SaveHandler_DbTable)

这是我的table:CREATETABLE`Sessions`(`id`varchar(32)NOTNULL,`modified`int(11)defaultNULL,`lifetime`int(11)defaultNULL,`data`text,PRIMARYKEY(`id`))ENGINE=InnoDB这是在我的Bootstrap中:$sessionConfig=array('name'=>'Sessions',//tablenameasperZend_Db_Table'primary'=>'id',//thesessionIDgivenbyphp'modifiedColumn'=

php - 如何在 PHP 中关闭浏览器后保持 session 打开?

我遵循了这里的答案,但它对我不起作用:Ispossibletokeepsessionevenafterthebrowserisclosed?这是我试过的代码:$session_life=2592000;//30dayssession_set_cookie_params($session_life);session_name('my_cart');session_start();//updatethesession_lifesetcookie(session_name(),session_id(),time()+$session_life);问题是每次浏览器关闭时我仍然得到一个新的ses

php - mysql pdo 事务和 session 存储

我无法确定什么是我的Web应用程序的最佳解决方案,该应用程序在每个session中多次访问(主要是读取)相同的用户数据。我应该在打开新session时立即将所有用户数据(大约40个字段)检索到$_SESSION还是应该保持持久的PDO(mysql)连接并在每次脚本执行时只从数据库中查询我需要的参数?另外:在同一事务中一次读取/更新大量字段(使用自定义查询)或一个一个读取/更新(使用通用查询的自定义组合)在性能上会有很大差异吗?例如$dbh=newPDO("mysql:host=localhost;dbname",$dbuser,$dbpass,array(PDO::ATTR_PERSI

python - 当 session.flush() 在 SQLAlchemy 上失败时,我应该调用回滚吗?

我知道当session.commit()失败时调用回滚,例如try-exceptblock。但是当session.flush()失败时,是否应该执行rollback()呢?try:session.flush()exceptIntegrityError:session.rollback() 最佳答案 接受的答案并不完全正确。关于Session.flush()的文档对此有点误导。失败时,事务(即数据库事务)将回滚(由数据库)。它的python对应物Session对象本身将处于“非事件”状态,并且根据文档12mustbeexplicitl

php - 如何在 PHP 中的不同 session 之间创建共享对象?

如何在PHP中的不同session之间创建共享对象?我正在考虑使用文件或MySQL内存表。使用文件不是一个好的选择,因为它没有锁定而且速度很慢。使用MySQL内存表是一个不错的选择,但是如何将类实例(对象)保存到表中呢?序列化对象并将其放入表中也很慢。Option1:MySQLmemorytableOption2:shm_attach,shm_detach,shm_get_var,shm_has_var,shm_put_var,..Option3:Memcache问题是使用MySQL内存表需要查询。Memcache不包含在标准PHP安装中。要在Windows上使用shm_*函数,需要使

mysql - 更改 SQLAlchemy 的 Session.delete() 行为

关于SQLAlchemy的Session的delete()方法是否有任何配置可能性?我想让相应的对象在数据库中标有已删除的标志,而不是从中删除。有没有办法做到这一点?目的是在不失去SQLAlchemy的级联特性优势的情况下,构建一个没有破坏性更新的数据库。 最佳答案 创建您自己的session类继承自Session并用您自己的逻辑覆盖delete()方法(对于那些需要逻辑删除),回退到其他对象的默认实现。如果你使用sessionmaker或者类似的工厂,你也可以在class_参数中提供你的类。希望这能回答您的问题。但是,话虽如此,对

php - 如何在 PHP session 中识别用户

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我登录一个用户,然后在我的PHP脚本中创建一个session变量并为其分配用户名(因为它是唯一的)。现在这是正确且安全的方法吗?如果没有,可以做什么?现在创建的session中包含用户名..$sql_query=mysql_query("SELECT*FROMpeopleWHEREusername='$_SESSION['user_of_mywebsite

php - Codeigniter session 大小限制

通过将session存储在数据库中时$config['sess_use_database']=TRUE;数据的大小是否受限于user_data字段的大小,即TEXT...?不像普通cookie那样只有4kb。 最佳答案 为了进一步澄清我上面的评论,当您选择将session数据保存在数据库中时,CodeIgniter不会设置cookie(当然sessionID除外)但会保存它本应设置的所有信息您数据库中的一个cookie。如果您查看位于./system/libraries/的Session类中的sess_write,如果您启用了使用数