Free CGI Perl PHP Script Olive Design CGI

一言メッセージ掲示板 その2

一言メッセージの掲示板に削除機能をつけてみました。

ファイル名bbs02.phpを作成し、下のソースを貼り付けて設置します。 同じ階層に空のファイルlog.datを作成してパーミションを666にします。

ファイルの文字コードはSHIFT-JISで保存します。

ソース bbs02.php

<?php
#ログ保存数を設定
$data_max=10;
#データファイルを設定
$data_file="log.dat";
$comment=$_POST[comment];
$del_no=$_POST[del_no];

mb_language("Japanese");
mb_internal_encoding("SHIFT-JIS");

#新しいコメントが追加されたら
if(!empty ($comment)){
        #タグの無効化
	$comment= htmlspecialchars ($comment);
        #データファイルを一行づつ読み込み
	$data_all = file($data_file);
	$fp = fopen($data_file,"w");
	flock($fp,2);
	#新しいコメントをデータとして整形
	$top_no   =explode (",",$data_all[0]); 
	$new_no   =$top_no[0];
	$new_no++;
	$new_data = "$new_no,$comment\n";
        #新しいコメントを書き込み
	fwrite($fp,$new_data); 
		for ($i=0; $i<$data_max;$i++){
                        #古いコメント書き込み
			fwrite($fp,$data_all[$i]);
		}
	flock($fp,3);
	fclose($fp);
        unset ($data_all);
}
elseif(!empty ($del_no)){
        #削除ナンバーが入っていたら
         #全角数字を半角に変換
	$del_no = mb_convert_kana($del_no,"n");
        #データファイルを一行づつ読み込み
	$data_all = file($data_file);
	$fp = fopen($data_file,"w");
	flock($fp,2);
		for ($i=0; $i<$data_max;$i++){
		$pdata = explode (",",$data_all[$i]);
                        #削除ナンバーとコメントナンバー以外 
			if($pdata[0] != $del_no){
                                #コメント書き込み直し
				fwrite($fp,$data_all[$i]);
			}
		}
	flock($fp,3);
	fclose($fp);
        unset ($data_all);
}
?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=Shift_JIS"> <title>一言メッセージ</title></head> <body> <h4>一言メッセージを書いてください。</h4> <form method="post" action="bbs02.php" ><br/> 保存コメント数は<? echo "$data_max"; ?>です。<br/> 入力 => <input type=text name="comment"> <input type="submit" value="送信"><br/> <?php #コメントの表示 $data_all = file($data_file); for( $i = 0; $i < $data_max ;$i++){ if(!empty($data_all[$i])){ $pdata = explode (",",$data_all[$i]); echo "$pdata[0] => $pdata[1]<br>\n" ; } } ?> <form method="POST" action="bbs02.php"> <br/> 削除番号<input type=text name=del_no size=4><br/> <input type=submit value=削除></form> <body> </html>
Perl PHP Free CGI Script OliveDesign CGI

Perl PHP Free CGI Script OliveDesign CGI

プライバシーポリシー / 特定商取引法に基づく表示