我正在構建一個基本的應用程序,我想弄清楚如何將用戶信息從login.php傳遞給index.php。以下是我到目前爲止:我有一個登錄頁面,通過用戶類通過數據庫提交和驗證用戶。之後,將用戶屬性設置爲從數據庫返回的值。從那裏,id被存儲在一個會話中。我將如何去訪問頁面間的用戶信息。我應該建立一個構造方法來查詢帶有會話ID的數據庫嗎?這是一種安全還是有效的方法?一個例子是堆棧溢出。您可以在每個頁面的頂部看到您的用戶名。如何在登錄後訪問用戶信息?
回答
聽起來像是你有會話處理下來的總體思路。所以你只是問什麼方法是安全的,或者優化了什麼。
儘可能在會話或cookie中存儲儘可能少的信息是很常見的,所以您不會將用戶打開到簡單的釣魚攻擊。所以理想情況下,這意味着您在數據庫中有一個會話表,您可以與會話ID進行交叉引用。
是的,你會在每個頁面加載上運行一個查詢,但這在標準站點上並不是那麼多。只要你正確地處理你的意見,它並不是不安全的。這樣,如果用戶操縱他們的會話信息,你將不會被關閉。
或者,如果您只是使用用戶標識和用戶名,則可以安全地將它們存儲在會話中,並避免在每次加載頁面時進行查詢。只是不要瘋狂地填充會話或cookie數據,而是用非常長的數組填充非常用的信息。
+1;關於會話數據安全的好處 –
@凱回答我的問題給T,謝謝。 – Scott
在登錄頁,存儲用戶在會話從數據庫中的信息,在其他頁面上,你可以直接打電話給他們
<?php
session_start();
$_SESSION['user'] = $username;
,並在另一個網站上
<?php
session_start();
$_SESSION['user'];
回到了stackoverflow的例子,當你進入你的個人資料頁面時,那裏有很多數據:你回答的問題,你問過的問題等等。你顯然不會把所有這些存儲在一個會話中,那麼如何使用$ _SESSSION ['USER']和id從數據庫中獲取所有數據? – Scott
我想你的sql結構中有你的用戶的主要id,只需在$ _SESSION ['id']中存儲id以及將在每個站點上使用的一些基本信息(如用戶名和名稱),如果你以後想要獲取一些困難和具體的查詢,只需從$ _SESSION ['id']獲取id並在sql查詢中使用它 –
我建立一個基本的應用程序,我試圖弄清楚我如何將用戶信息從login.php傳遞給index.php
一種方式是共享數據存儲爲PHP會話數據:http://www.tizag.com/phpT/phpsessions.php
<?php
session_start(); // start the session
$_SESSION['views'] = 1; // store session data
echo "Pageviews = ". $_SESSION['views']; //retrieve data
商店,你需要所有頁面的用戶數據。您可以將擴展數據留在數據庫中,因此您不必預先查詢大量數據(例如您在SO上的配置文件頁面上看到的詳盡統計數據)。
然後,您不必在每個頁面上重新查詢用戶數據。只需從會話數據中檢索它。
我應該只是建立一個構造方法來查詢與會話ID數據庫?這是一種安全還是有效的方法?
如果您對所有內容都使用相同的DB帳戶,那麼在查詢用戶表時就沒有任何內在不安全的問題。你不會讓自己面臨比你已經做的任何其他查詢更多的風險。
如果您在訪問數據庫時擔心安全問題,建議您瞭解一個具體問題:防止SQL injection attacks。
- 1. 如何訪問用戶信息在angularjs申請成功登錄後
- 2. 如何在用戶登錄後根據用戶的登錄信息
- 3. 從Instagram訪問用戶信息,而無需用戶登錄
- 4. PHP - 登錄後隱藏用戶信息
- 5. 登錄後顯示用戶信息
- 6. 登錄後顯示用戶信息AngularJS
- 7. 如何在asp.net mvc中登錄後顯示用戶信息?
- 8. 如何識別沒有登錄信息的重訪用戶
- 9. 如何在NodeJS驗證後使用AngularJS訪問用戶信息?
- 10. 在用戶登錄Facebook後獲取用戶詳細信息
- 11. 如何使用登錄憑證訪問Facebook用戶詳細信息?
- 12. Symfony在登錄模板後顯示用戶帳戶信息
- 13. Facebook登錄用戶如何訪問其信息並獲得訂閱
- 14. 使用Javascript登錄後在PHP中使用用戶信息
- 15. c#mvc 5,facebook登錄 - 如何在初始登錄後詢問額外的用戶信息
- 16. 用戶登錄後緩存用戶信息
- 17. 在登錄時存儲用戶信息供以後使用
- 18. 如何訪問web根外的sql登錄信息
- 19. 限制用戶登錄後訪問登錄頁面php
- 20. 如何存儲在一個地方的多個Web API控制器登錄和訪問後用戶信息
- 21. 使用登錄用戶的信息上
- 22. 在驗證登錄詳細信息後返回用戶名的登錄servlet
- 23. 在Janrain的OpenID PHP庫登錄後無法檢索Google用戶信息登錄
- 24. 如何防止登錄用戶訪問登錄頁
- 25. haw在登錄後加載用戶信息SPA koa.js
- 26. 在Android版Firebase中登錄後獲取用戶信息
- 27. 如何在使用RESTful服務登錄後檢索用戶信息
- 28. 如何在JavaFX桌面應用程序登錄後保留用戶信息
- 29. 如何在Struts2中訪問登錄用戶的用戶名?
- 30. 我想訪問index.php登錄或不登錄索引頁登錄詳細信息
爲什麼不將用戶信息存儲到會話中? –