会话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']}";

这种方法操作安全吗?对我来说似乎有点虚弱,但我从未使用过会话ID作为外键。任何建议都非常欢迎。 如果这个问题不好我很抱歉。

评论
nquis
nquis

$_SESSION['id'] simply sets a new property id to the provided value, you're not using the session id itself. If you want to get the session id, simply use session_id().

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

点赞
评论
edolor
edolor

这是不安全的。

为什么将参数用于其他值,而不将参数用于会话ID?

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