2012-08-15 54 views
0

我的工作有PHP类,可以连接到登录和其他数据库事务的Web服务器应用程序和SQLite作为一个本地数据库来存储用户凭据。我是否需要设置会话或用户首选项?

我不确定SQLite是否维护用户会话,但它保持登录状态,直到用户单击注销按钮。

我将如何实现会话(或其他),以便用户可以根据整个州的用户ID进行其他数据库事务?

有人说建立session in PHP和其他说use preferences

什么是对我最好的解决办法?

回答

2

也许我不应该问,但是,你的web服务是否是RESTful?

如果是这样,我读了很多关于不在服务器上保留用户会话的讨论,而是在每个请求(使用他的凭证或更安全的授权系统)上验证用户身份。

否则,是的,您可以在用户进行身份验证时在服务器端创建PHP会话。您将会话存储在包含fk_user_id字段的特定表中,并且一旦身份验证过程结束,就会将session_id发送回客户端应用程序(在您的情况下为android应用程序)。然后,session_id被存储(例如在用户偏好中),并与每个请求一起发送,以检索谁在询问数据,这要感谢会话表和它的fk_user_id字段。

+0

我可以创建一个没有在数据库中创建一个会话表中的会话?数据库具有用户ID和PW,并且我正在检索并存储在sqlite上。 – user1466971 2012-08-15 17:08:24

+0

如果您不跟踪它们,您将如何识别(服务器端)您收到的不同session_ids?如果由于某种原因,你不能或不想存储会话,那么请使用第一个选项来发送每个请求的用户凭据(例如使用HTTP基本身份验证) – 2012-08-15 17:16:13

+0

好的谢谢一堆! – user1466971 2012-08-15 17:19:49

相关问题