datafilename = $_datafilename;
$this -> maxcount = $_maxcount -1;
$this -> overcount = $_maxcount +9;
$this -> overfilename = $_datafilename.".over";
$this -> exchangefilename = $_exchangefilename;
}
//----- 投稿内容の表示
function view(){
if (file_exists($this -> datafilename)) {
$fp = fopen($this -> datafilename,"r");
} else {
$fp = fopen($this -> datafilename,"w+");
}
$i = 0;
while ($data = fgetcsv($fp,1000)){
$this -> template($data[0],gmdate("Y/m/d H:i:s",$data[1]+9*60*60),$data[2],$data[3],$data[4]);
++$i;
if ($i > $this -> maxcount) break;
}
fclose($fp);
}
//----- 投稿内容の保存
function write($_pal1, $_pal2 = "", $_pal3 = "") {
if($_pal1 != "") {
//----- 禁則処理
$_pal1 = str_replace("\n","
",$_pal1);
$_pal1 = str_replace("\r","",$_pal1);
$_pal1 = str_replace(",","%%2C",$_pal1);
$_pal1 = str_replace("\\\\","%%5C",$_pal1);
$_pal2 = str_replace("\n","
",$_pal2);
$_pal2 = str_replace("\r","",$_pal2);
$_pal2 = str_replace(",","%%2C",$_pal2);
$_pal2 = str_replace("\\\\","%%5C",$_pal2);
$_pal3 = str_replace("\n","
",$_pal3);
$_pal3 = str_replace("\r","",$_pal3);
$_pal3 = str_replace(",","%%2C",$_pal3);
$_pal3 = str_replace("\\\\","%%5C",$_pal3);
//----- 投稿内容のデータ化
$i = 0;
$data[$i] = getenv("REMOTE_ADDR").",".time().",".$_pal1.",".$_pal2.",".$_pal3."\n";
$_eof = 0;
//----- 既存内容の読込
$fp = fopen($this -> datafilename,"r");
while ($sss = fgets($fp,1000)){
++$i;
$data[$i] = $sss;
if ($i >= $this -> overcount) {
$_eof = 1;
break;
}
}
//----- オーバーフロー部分の別ファイル保存
if ($_eof == 1) {
$fpo = fopen($this -> overfilename, "a");
while ($sss = fgets($fp,1000)){
fputs($fpo,$sss);
}
fclose($fpo);
}
fclose($fp);
//----- 最新内容の保存
$fp = fopen($this -> datafilename, "w");
for ($c=0;$c<=$i;$c++) {
fputs($fp,$data[$c]);
}
fclose($fp);
}
}
//----- 投稿内容表示の為のテンプレート
function template($_ip,$_time,$_pal1,$_pal2,$_pal3){
//----- 禁則処理
$_pal1 = str_replace("%%2C",",",$_pal1);
$_pal2 = str_replace("%%2C",",",$_pal2);
$_pal3 = str_replace("%%2C",",",$_pal3);
$_pal1 = str_replace("\\","",$_pal1);
$_pal2 = str_replace("\\","",$_pal2);
$_pal3 = str_replace("\\","",$_pal3);
$_pal1 = str_replace("%%5C","\\",$_pal1);
$_pal2 = str_replace("%%5C","\\",$_pal2);
$_pal3 = str_replace("%%5C","\\",$_pal3);
//----- テンプレートファイルの読み込み
include($this -> exchangefilename);
}
};
//---------------------------------------
?>