記事No | : 4803 |
投稿日 | : 2008/11/04(Tue) 18:03:11 |
タイトル | : Web Patio 過去ログ画像の自動削除 |
ID情報 | : sanken |
投稿者 | : サンケン |
URL | : http://homedoctor-sanken.com/sanken-info/database.cgi |
はじめまして。
Web Patioをダウンロードさせていただき、設置テストをしていたのですが、過去ログの最大スレッド数を1や2と設定してテストをしていた所、記事は順番に削除されるのですが、画像がuplフォルダに残ったままとなってしまいます。
サーバー容量の関係で、過去ログの記事が削除される場合は、同時に画像も削除されるとよいのですが、もしかしたらこちらの設定上の問題でしょうか?uplフォルダのパーミッションを一通り変えてみましたが、どうしても画像が残ってしまいます。
本当は過去ログ自体も不要なのですが、$p_max = 0; $p_max = ;(エラー)としても過去ログ機能は動作してしまうようです。
過去ログの画像の削除については、管理画面から「スレ削除」をした場合は、ちゃんと記事と共に画像も削除されます。
良い方法がありましたら、どうかアドバイスを宜しくお願い致します。
記事No | : 4804 |
投稿日 | : 2008/11/05(Wed) 16:50:36 |
タイトル | : Re: Web Patio 過去ログ画像の自動削除 |
ID情報 | : kent |
投稿者 | : KENT |
> はじめまして。
> Web Patioをダウンロードさせていただき、設置テストをしていたのですが、過去ログの最大スレッド数を1や2と設定してテストをしていた所、記事は順番に削除されるのですが、画像がuplフォルダに残ったままとなってしまいます。
本当ですね。
regist.cgi 152行目を以下のとおり修正してみてください。
# 過去index更新
if (@tmp > 0) {
$i = @tmp;
open(DAT,"+< $pastfile") || &error("Open Error: $pastfile");
eval "flock(DAT, 2);";
while(<DAT>) {
$i++;
if ($i > $p_max) {
local($delno) = split(/<>/);
open(IN,"$logdir/$delno.cgi");
my $top = <IN>;
my $log = <IN>;
close(IN);
local($no,$sub,$nam,$eml,$com,$dat,$ho,$pw,$url,$mvw,$myid,$tim,$upl{1},$upl{2},$upl{3}) = split(/<>/, $log);
foreach $i (1 .. 3) {
my ($ex,$w,$h) = split(/,/, $upl{$i});
if ($ex) { unlink("$upldir/$tim-$i$ex"); }
}
unlink("$logdir/$delno.cgi");
unlink("$logdir/$delno.dat");
next;
}
push(@tmp,$_);
}
seek(DAT, 0, 0);
print DAT @tmp;
truncate(DAT, tell(DAT));
close(DAT);
}
記事No | : 4805 |
投稿日 | : 2008/11/05(Wed) 18:42:43 |
タイトル | : Re^2: Web Patio 過去ログ画像の自動削除 |
ID情報 | : sanken |
投稿者 | : サンケン |
URL | : http://homedoctor-sanken.com/sanken-info/database.cgi |
KENTさんこんにちわ。
長年に渡って便利なプログラムの公開、ありがとうございます。
早速試してみた所、正常に削除されるようになりました。
早急にご返信いただきまして、ありがとうございました。
今後も新作を楽しみにしています。m(_ _)m