我有一個登錄系統。然後,用戶進行登錄,他可以訪問私人資料(個人資料)。會話的最佳做法 - 登錄
我需要認識到用戶做了登錄才能得到他的東西。所以,我需要這樣的:$nameUser=$_SESSION['u_name']
是否正確?那麼我可以做這樣的查詢:
Select photo*from tablePhotos where name= $nameUser
。
我擁有的代碼已被佔用,還是存在安全問題?
它表明爲每個會話生成一個session_id有意義嗎?什麼是「規則」?
我沒有與會議太多的經驗......
<?php
session_start();
if(empty($_SESSION['u_name']))
header("Location:index.php");
if(isset($_GET['logout'])) {
session_destroy();
header("Location:emprego.php");
}
$name = $_SESSION['u_name'];
echo $name ;
echo "<a href='secure.php?logout'><b>Logout<b></a>";
?>
好,說實話,你的用戶關聯數據應該通過ID關聯,所以不是存儲完整的用戶名,而是存儲一個整數,這在你的表大小上更容易,並且如果索引正確,可以提供更快的查找。 – 2011-05-23 02:48:06
u_name是電子郵件。我認爲當用戶進行登錄時,更容易檢查數據庫中的電子郵件和密碼,然後在會話中存儲電子郵件(這對每個用戶都是唯一的)。 – user455318 2011-05-23 02:52:56
通常在登錄時使用電子郵件和密碼進行獲取用戶標識所需的查找。然後,您使用用戶標識來查找用戶關聯的數據,這是因爲我之前的評論中提到的原因。 – 2011-05-23 03:00:10