【发布时间】:2014-10-21 22:37:31
【问题描述】:
我的要求是加密密码并一次性更新 MySQL 数据库。
这就是我尝试这样做的方式。但是没有成功。
这是一个好方法吗?
php:
require_once("conn.php"); //PDO
//I've set all passwords in an array
$values = array (
array ( "studentID" => "SCI164" , "pass" => "ABCD12"),
array ( "studentID" => "GEO24" , "pass" => "XYZ1"),
array ( "studentID" => "SCI112" , "pass" => "PQR89")
)
foreach ($values as $temp) {
foreach($temp as $key => $val){
$stuID = $key"studentID";
$rawPass = $key"pass";
$encPass = md5($rawPass);
$sql_update = "UPDATE students_db
set pass = $encPass
where studentID = $stuID Limit 1";
}
}
【问题讨论】:
-
如果你已经在使用 PDO,那么使用准备好的语句,不要浪费它的好功能,如果你使用 PHP 5.5 使用
password hashing或者如果 backward compatibility而是 -
您还应该阅读 md5 函数手册页上的注释php.net/md5
-
.. 并且可能运行实际查询
-
@Ghost:谢谢。这是为了更新一个已经在使用并且有自己的加密系列的数据库。我在这里使用 md5 进行说明。
-
如果您要问什么是好方法,请使用准备好的语句。这里是tutorial
标签: php mysql pdo multidimensional-array mysqli