2017-02-11 11 views
-2

24時間ごとにデータを削除します。PHP - 24時間挿入後にデータベースから自動的にデータを削除するには

例:ユーザーが今日追加され、彼がアクティブではない場合、24時間後にユーザーは自動的に削除されます。

cronがローカル/オフラインサーバーにないため、私はこれをcronなしで行うつもりです。

私は本当にあなたの助けが必要です。

+0

PHPでこれを行う唯一の方法は、データベース行に最後にログオンしたタイムスタンプがあることです。ユーザーが24時間後に戻った場合は、レコードを削除します。 PHPは、Webページがロードされて舞台裏では実行されない場合にのみ実行されます。 – NoLiver92

+0

MySQLにはスケジュールされたイベントがあります(https://dev.mysql.com/doc/refman/5.7/en/create-event.htmlを参照)。これらを使用することができます - データベースの日付を記録し、毎日のようなものを 'DELETE FROM yourtable WHERE date = ... 'のように記録してください。 – Toastrackenigma

答えて

0

あなたは、単に

DELETE FROM your_table 
WHERE your_date_col < DATE_SUB(NOW(), INTERVAL 1 DAY)) 

を使用して、とにかくこのドキュメントを見て取り、この

CREATE EVENT my_dayly_event 
    ON SCHEDULE 
     EVERY 1 DAY 
    COMMENT 'delete old values.' 
    DO 
    DELETE FROM your_table 
    WHERE your_date_col < DATE_SUB(NOW(), INTERVAL 1 DAY)) 

よう代かもしれないのmysqlにスケジュールされたイベント

を使用することができます。 https://dev.mysql.com/doc/refman/5.7/en/create-event.html ...有用かもしれません

+0

スケジューラーイベントの使い方が分かりません。 – JBoy

+0

これは、私が結果を見る前に1日待たなければならないことを意味します。右? – JBoy

+0

これはサンプルです...あなたは文書を勉強して、あなたにとってより良いことを試すことができます。デバッグやテストのために頻度(1時間または1分)を変更することができます。 – scaisEdge

関連する問題