gpt4 book ai didi

php - 将 PHP 数据库值直接保存在 session 数组中是否安全?

转载 作者:行者123 更新时间:2023-11-29 00:01:20 26 4
gpt4 key购买 nike

我想知道在 PHP 中对 mySQL 进行数据库操作时,将所有数据库值保存在 session 数组中是否真的安全,如下所示

$query = "select * from `users` where `mails` = ? and passx= ? ";
$result = DB::instance()->prepare($query)>execute
(array($m,$s))->fetchAll();
foreach($result as $row){
$user[] = $row;
$_SESSION['user'] = $user;
}

恐怕所有数据库列名都可以在 session 数组中使用。如果有任何其他方法,请告诉我。

最佳答案

是的,$_SESSION 数组是私有(private)的,永远不会向用户显示,除非 php 配置为将 session 文件保存在可公开访问的位置或服务器上存在安全漏洞。但是, session 可能会被用户窃取,其他人可以使用某些特定方法登录。

阅读如何防止 session 固定 here

还相关:Where is data stored in a session?

顺便说一句,您可以使用 reset()而不是 foreach() 返回数组中的第一个键。

关于php - 将 PHP 数据库值直接保存在 session 数组中是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29656391/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com