我在我的网站上有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){' –