さて、私はここで多くの同様の質問を見てきましたが、どれもうまくいかないようです。近視眼的または適切に検索する能力がない場合は、事前にお詫び申し上げます。
TIMESTAMP
したがって、私が行う必要があるのは、MySQLデータベースのaが、スクリプトが実行されている現在の時刻の正確に1時間以内であるかどうかを確認することです。
必要なコードを見逃した場合は、お知らせください。
私がこれまでに持っているもの:
$result = mysqli_query($link, "SELECT *
FROM web_users
WHERE pass_reset_token='".$token."'
AND last_pass_reset < last_pass_reset
INTERVAL 1 HOUR")
or die(mysqli_error($link));
私が以前に試したこと:
$result = mysqli_query($link, "SELECT *
FROM web_users
WHERE pass_reset_token='".$token."'
AND last_pass_reset < NOW()-INTERVAL 1 HOUR")
or die(mysqli_error($link));
また:
$result = mysqli_query($link, "SELECT *
FROM web_users
WHERE pass_reset_token='".$token."'
AND last_pass_reset < DATE_SUB(CURTIME(),
INTERVAL 1 HOUR)")
or die(mysqli_error($link));
したがって、私の理解では、操作されたSQL時間がlast_pass_reset以上1時間以上であることを確認するために、一致が必要になるということです。
ありがとう。
編集::
これは、正しく入力したことを確認するために更新されたSQLクエリです。
// Perform a database search using the paramteres of the global variable
$result = mysqli_query($link, "SET @scriptStartTime = CONCAT(CUR_DATE(), ' ', CUR_TIME())
SELECT *
FROM web_users
WHERE pass_reset_token='".$token."'
AND last_pass_reset > DATE_SUB(@scriptStartTime, INTERVAL 1 HOUR)")
or die(mysqli_error($link));