2012-08-15 95 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

相關問題