我在我的網站上有90k註冊用戶,我想刪除所有具有「ze5fze56f4」作爲密碼的用戶。刪除密碼= ze5fze56f4的所有行
我做了這個腳本,但它總是在沒有刪除任何行的情況下完成的,因此說「刪除了0個用戶」。
<?php
require "includes/db.php";
$x = 0;
for($i = 0; $i < 91000; $i++){
$SQLcheckPassword = $odb -> prepare("SELECT password FROM users WHERE ID = :i");
$SQLcheckPassword -> execute(array(":i" => $i));
$SQLgetPassword = $SQLcheckPassword -> fetchColumn();
if(strpos($SQLgetPassword, "ze5fze56f4")){
$x++;
$SQLdeleteUser = $odb -> prepare("DELETE FROM users WHERE ID = :i");
$SQLdeleteUser -> execute(array(":i" => $i));
}
}
die("$x users removed");
?>
我不明白爲什麼它不工作,但我知道我不是由simpliest方式做這件事。
在此先感謝您的幫助。
你真的存儲密碼清楚嗎?什麼是你的網站,所以我可以遠離它,因爲它不尊重基本的安全做法...... –
爲什麼不從用戶那裏刪除密碼LIKE'%ze5fze56f4%'?並且絕不要將密碼存儲清楚!使用散列來存儲密碼。 –
'if(strpos($ SQLgetPassword,「ze5fze56f4」)!== false){' –