-1
loginpage.php如何使用postgresql中的特定列並在if條件中使用該列?
$token = $data["token"];
//genereted token on web
$genereted_token = get_random_string($user, 50);
$_SESSION['login_success']=$login_success;
//add sesion token
$_SESSION['token']=$genereted_token;
//update query token to database
$query="update users set token='$genereted_token'"."where
id='$user'";
$result=pg_exec($conn,$query);
mainpage.php
$SQL_select="SELECT * FROM users WHERE id='$user'limit 1";
$result=pg_exec($conn,$SQL_select);
$dt_token = pg_fetch_array($result,0);
$_SESSION['token_db'] = $dt_token["token"];
$a = $_SESSION['token_db'];
$b =$_SESSION['token'];
if($b == $a){
echo "valid token";
}else{
echo "invalid token ";
}
我得到每次無效令牌。 NB:$ a =從數據庫中獲取數據 $ b =從登錄頁面獲取會話數據
問題,數據庫中的數據在$ a上,如果我回顯他得到令牌的正確結果,與$ b相同的變量,但是,當im使用if條件,如「if($ b == $ a)」時,該變量不具有相同的標記數據。
我的英文不好
'$ a'和'$ b'的值是什麼?你在哪裏定義'$ _SESSION ['token']'? – showdev
$ _SESSION ['token']它來自登錄頁面,並且來自主頁面的語法,所以當用戶登錄時他已經生成了標記並將其保存在$ _SESSION ['token']中,生成的標記已將標記從數據庫也。 但是當我從數據庫調用令牌並將其保存在變量字段($ a)中時,如果條件爲先生,我無法使用它,你能幫忙嗎? @獨裁者 –