已编辑添加更多信息
我需要使用mysql的md5函数来使用它的id字段(uid
)来选择项目。我有一个名为recover_db
的用户的单独数据库,其中包含用户ID的md5哈希值和时间戳。
目前,用户访问的链接如下:
recover-MD%HASHEDUSERID.html
然后系统从网址中获取MD%HASHEDUSERID
并检查它是否存在于recover_db
中,如果存在,则让他们恢复帐户。还有其他一些安全性的东西,但我没有将用户ID存储在recover_db
中,只是它的MD5值。我使用以下方法来做到这一点:
md5(90*13/12*56+$id)
现在我需要检查用户数据库并使用我保存的md5值获取REAL帐户ID。我使用以下查询来执行此操作:
$query = "SELECT uid FROM users where md5(90*13/12*56+uid)='".$md5accID."'";
不幸的是,这没有结果。有没有办法从users
使用md5版本从recover_db
数据库获取真实用户ID?我想避免将用户ID存储在recover_db
中,如果可以的话。
答案 0 :(得分:1)
将原始用户ID与哈希(origuid
)一起保存在字段hasheduid
中,并保存在恢复数据库中。然后做
$query = "SELECT origuid FROM users where hasheduid='".$md5accID."'";
检索原始用户ID。