これは私のデータベース管理クラスにとって奇妙に聞こえるかもしれませんが、ユーザーのパスワードを 90 日間保存するログイン システムを作成する必要があります。はい、私はこれが非常に不安定であり、実用的であるとは考えていませんが、教師が望んでいることを知っています. 時間が90日を過ぎているかどうかを評価することを除いて、すべてが機能しています。
これは、現在 90 日を過ぎているかどうかを確認する必要があるコードです。MySql データベースの 'Time' メンバーは 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");
}
}
はい。非推奨の関数を使用していることはわかっていますが、これは私の先生が使用するように教えてくれたものです。