会话ID为外键(安全?

问题描述 投票:0回答:1

我想使用会话ID来更新数据库中的一个特定条目(作为外键)。

会话id......我想使用会话id来更新数据库中的一个特定条目(作为外键)。

$_SESSION['id'] = '1';

PDO

$sql = "UPDATE table_user set f_name = :f_name, l_name = :l_name where id = :id and fk_user = {$_SESSION['id']}";

这种方法操作起来安全吗?我觉得有点弱,但我从来没有用session ids作为外键。任何建议都是非常欢迎的,如果这个问题不好,我很抱歉。

php security session pdo
1个回答
0
投票

这是不安全的。

为什么你对其他值使用参数,而对session id不使用参数?

$sql = "UPDATE table_user set f_name = :f_name, l_name = :l_name where id = :id and fk_user = :session_id";

0
投票

$_SESSION['id'] 只是设置了一个新的属性 id 的值,你并没有使用会话id本身。如果你想获得会话ID,只需使用 session_id().

我假设你希望这个ID可以用于多个页面,这就是为什么你要把它保存在会话中,这没有什么问题。

© www.soinside.com 2019 - 2024. All rights reserved.