0

これは私のデータベース管理クラスにとって奇妙に聞こえるかもしれませんが、ユーザーのパスワードを 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");
                    }
                }

はい。非推奨の関数を使用していることはわかっていますが、これは私の先生が使用するように教えてくれたものです。

4

0 に答える 0