2011-07-25 16 views
2

メッセージを削除し、ページがリロードされなくなるまでリストアできるようにする必要があります。だから、私は 'メッセージ'テーブルに 'is_deleted'フィールドを持っています。私が望むのは、後にこれらの '削除された'レコードを削除することです。これに最適な解決策は何でしょうか?ソフト削除とリカバリ(MySQL、PHP)

それはあなたのニーズによって異なり
+0

あなたは達成したいことについて少し明確にする必要がありますか?ユーザーがページを離れたときに削除済みとしてマークされたこれらの要素をパージ/削除する必要がありますか?または、管理パネルのボタンで削除済みとマークされたアイテムをパージしますか? –

+0

ボタンが '変更されました'? – Wrikken

+0

「何か」まで何かしたいことがありますか?*何も起こらない(ページがリロードされる)? – barfoon

答えて

6

、「パージ」ボタンをクリックすると、欲しいものであってもよいし、多くの時間は、人々は、x日後、それはまだのように示している場合、NULL可能DATETIMEフィールドであることをis_deletedcron jobを使用して設定します削除されると自動的にデータベースから削除されます。

もし自動的な方法があなたにアピールするならば、あなたはLinux上でCronジョブを見たり、Windowsのタスクスケジューラを見たりしています。 cronの例をご希望の場合は、レコードをシステムから削除する頻度を知っておく必要があります。私はそのレコードの例を提供します。

例えば、削除スクリプトを5分ごとに実行する:

*/5 * * * * /usr/bin/php -f /path/to/script/purgeDeleted.php > /dev/null 

をあなたはまだpurgeDeleted.phpスクリプトを記述する必要がありますが、それはcronジョブを経由してPHPのCLIスクリプトを実行するための設定ですLinuxで。

+0

それは私が必要なものです。ありがとうブラッド! – Fenec

関連する問題