对于我的数据库管理类来说,这听起来很奇怪,我必须编写一个登录系统,将用户的密码存储 90 天,以便他们只需输入用户名即可登录。是的,我知道这是非常不安全的,并且不认为它是实用的,但它是老师想要的。除了评估时间是否超过 90 天之外,我一切正常。
这是我目前必须检查的代码,看看它是否超过 90 天。MySql 数据库的“时间”成员是一个 INT,我感觉错误在于比较$member['Time'] <= time()
//create query
$qry="SELECT * FROM MEMBER WHERE username='$username' AND password = '$password'";
$result=mysql_query($qry);
$member = mysql_fetch_assoc($result);
//Input Validations
if($username == '') {
$errmsg_arr[] = 'Username missing';
$errflag = true;
}
if($password == '' && $member['Time'] <= time()) {
$errmsg_arr[] = 'Password missing';
$errflag = true;
}
else
{
$qry="SELECT * FROM MEMBER WHERE username='$username'";
$result=mysql_query($qry);
}
这是我将当前时间插入数据库 + 90 天以存储需要密码的时间的地方。
$days = 90*24*60*60;
$ttl = time() + $days;
if($member['Time'] <= time() || $member['Time'] === NULL)
{
$query = "UPDATE MEMBER set Time='$ttl' WHERE username = '$username'";
$result = mysql_query($query);
if(!$result)
{
die("Query Failed");
}
}
是的。我知道我正在使用已弃用的功能,但这是我的老师教我们使用的。