我的要求是一次性加密密码并更新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";
}
}
最佳答案
您不能使用.EDITED$stuID = $key"studentID";
这应该给出错误。
foreach($values as $key=>$val) {
$sql_update = "UPDATE students_db
set pass ='". md5($val['pass'])."'
where studentID =". $val['studentID']."Limit 1";
echo $sql_update;
}
单引号,因为md5将返回类似
xvm456n334
的值,即字母数字。关于php - 使用多维数组更新MySQL数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25542479/