CGI-BBS > CGI > Perl > Perlについてテキストファイルの内容を行単位で任意に削除


カレッヂ
カレッヂ


質問者 13  投稿日 10/14(火) 22:25:22
簡単なcgi(perl)の作成をしております。
パソコンはWindows、サーバはUNIXです。perl v5.6.0です

以下のようなことをしたいのですが、どのように考えてよいのかもわかりません。
テキストファイルの内容を行単位で任意に削除したいのです。

text.txtの記述内容
-----------------
あいうえお
かきくけこ
さしすせそ
たちつてと
なにぬねの
----------------

上のテキストファイルをWeb上に表示させ、
チェックボックスによりチェックされた行を削除したいと思っています。

---------------------------------------
print "Content-type: text/html\n\n";
print "<HTML><BODY>";

# 読み込んだファイルを出力
open(FILE,"text.txt");
while(<FILE>){
chop();
print "<input type=\"checkbox\">";
print "$_<br>\n";
}
close(FILE);

print "</BODY></HTML>";
---------------------------------------

「かきくけこ」と「なにぬねの」にチェックをした場合、
どのような手順を踏んでもかまわないのですが、
最終的に、text.txtの中身を下のようなものにしたいのです。

------------
あいうえお
さしすせそ
たちつてと
-----------

ヒントでも結構です、教えてください。

プロバイダ参照:
サーバのOS:UNIXサーバ
パソコンのOS:WinNT系
エディタ:Peggy Pad
FTPソフト:FFFTP
サーバ移転:していない
改造:していない
CGI習熟度:(未選択)

回答者 まさ  [削除]  投稿日 10/15(水) 09:38:06
チェックボックスには適当な名前つけて下さい。

name="check"

のように。

そしてCGI側ではCGI.pmを使ってこのデータを取得します。
こんな感じでしょうか。

use CGI qw(:standard);
@check  = param('check');

以上のようにチェックされたものが配列として取得することができます。

あとはその配列をみてチェックされているものを削除して、そのデータを
書き出せばOKです。

返信(回答)する

 


Web裏技