昨日、時間を計算するために別の質問をしました。
必要なものはすべて最初のテーブルで既に与えられているため、プロジェクトに 2 番目のテーブルを使用しても意味がないことに気付きました。したがって、今のところ、2 つのタイムスタンプを挿入する 2 つのテーブルを使用します。
$time = "INSERT INTO table2 ( a, b, c) VALUES (NOW(),NOW() + INTERVAL 14 DAY,(unix_timestamp(NOW()+ INTERVAL 14 DAY)) - unix_timestamp(NOW()))";
すでに述べたように、2 番目のテーブルがなくても同じ結果が得られるので、はるかに簡単になる可能性があります。今私の問題は、phpでtimefunctionsを使用したのはこれが初めてです。よくわからない機能がたくさんあります。
私の問題を解決するには、次のようなものを使用できると思います。
$row = fetch_assoc()
$old_timestamp = $row->b;
$actual_time = mktime(); //which makes an actual timestamp
$seconds = '1209600'; //which is exactly the timeperiod of 14 days
$added = $old_timestamp + $seconds; //which adds the seconds to the old timestamp and should be the same as NOW() + INTERVAL 14 DAY from the VALUE of the query
$date_to_check = $added - $actual_time;
if $date_to_check <= 0 {
do something }
これは可能ですか?どなたかお力添えいただけると大変助かります。どうもありがとう。
アップデート
私が考えていることを知りたいすべての人のために。実際の方法のコードは次のとおりです。
$time_check = $db->query("SELECT (B <= NOW()) AS var FROM table2 WHERE x='$x'");
while ($row = $time_check->fetch_object()){
if (($row->var != 0) && ($var1 === '0')){
$update_status = $db->query("UPDATE table1 SET var1='1' WHERE x='$x'");{
$delete_timecount = $db->query("DELETE FROM table2 WHERE x='$x'");
}
}
}
2番目のテーブルなしで同じ結果を達成したいと思います。