/*IndexUpdater customizing by NetMania
*http://www.netmania.jp
*Let's PHP さんのP-BBSのカスタマイズバージョンです。
*利用規約はLet's PHPさんに準じます。
*カスタマイズバージョンの再配布はしないで下さい。
*シンプル・クールにデザイン変更してあります。
*
************************************************************************************
* IndexUpdater by ToR 2000/01/20 -完成
* 2000/02/27 -タグOnOff、改行を
OnOff、デザイン修正他
* 2000/05/06 -過去ログページんぐ、$myfile
* include("update.php");?>を挿入すると過去3回の履歴を表示します
* テーブル用HTMLは自分で作成してください
* パーミッションを606か666にした、空のファイル(new.txt)を作成してください
* new.txtにログが残ります
*
* 編集可バージョン "■ ".$now."
".$com."\n";フォーマットのみ対応
*/
//---------------------- 設 定 -------------------------------------------
$logmax = 100; //ログ記録最大行
$max = 10; //表示件数
$page_def= 10; //過去ログ何件ずつ
$logfile = "new.txt"; //ログファイル名
$pwd = "5572"; //パスワード(変更してください
$title = "新着情報一覧"; //タイトル(変更してください
$title2 = "新着情報"; //過去ログタイトル(変更してください
$wid = "540"; //テーブルの幅
//
$now = gmdate("Y/m/d(D) H:i", time()+9*60*60);//日付のフォーマット
if(phpversion()<"4.1.0") $_SERVER = $HTTP_SERVER_VERS;
$lines = file($logfile);//ファイルを配列に読み込む
//---------------------- ヘッダ・スタイルシート-----------------------------
if($_SERVER['QUERY_STRING']){
echo "
";
}
if($_SERVER['QUERY_STRING']=="regi"){//ログ書き込み
if(!isset($_POST['com'])) die("何も入力されてません。");
$com = $_POST['com'];
if(get_magic_quotes_gpc()) $com = stripslashes($com);
if($html) $com = htmlspecialchars($com);
if(!$br) $com = nl2br($com); //改行文字の前に を代入する。 $com = ereg_replace( "[\r\n]", "", $com); //\nを文字列から消す。 $message = " ■ ".$now." ".$com." \n"; $st = ($_POST['edit']=="1") ? 1 : 0; $fp = fopen ($logfile , "w"); //書き込みモードでオープン flock($fp ,LOCK_EX); fputs ($fp, "$message"); //先頭に書き込む for($i = $st; $i < $logmax; $i++) //いままでの分を追記 fputs($fp, $lines[$i]); fclose ($fp); echo $message; echo " --------更新完了------------ "; } if($_SERVER['QUERY_STRING']=="put"){//更新書き込みフォーム $pass = $_POST['pass']; if(isset($pass) && $pass != $pwd) die("パスワードが違いますよぉ〜!!"); $edit = 0; if ($_POST['edit']){ $rcom = strstr($lines[0],"r>");//最初の から全部〜 $rtag = strlen($rcom) - strrpos($rcom, "<");//最後の<タグ位置 $rcom = substr($rcom, 2, -$rtag);//最初の から最後のタグまで $edit = 1; } echo " }else { ?> } } if(eregi("old",$_SERVER['QUERY_STRING'])){//過去ログ表示部分 echo "$title2 "; /* 1ページずつ表示 */ //?old+3を展開->$page=3 $page = strstr($_SERVER['QUERY_STRING'], '+'); if($page){//page=3が設定されたら開始位置は(3-1)*10=20 配列20番目 $st = ($page-1) * $page_def;// }else{ $page = 1;//最初はpage=1 } for($i = $st; $i < $st+$page_def; $i++){//10件ずつ表示 echo $lines[$i]; } if (sizeof($lines) > $page_def) {//10件より多いならページング作成 $pages = ceil(sizeof($lines) / $page_def);//35÷10=3.5 ceil切り上げ 4 for ($i = 1; $i <= $pages; $i++) {//ログ35行なら4ページ if($page == $i){//今表示しているのはリンクしない $next .= " $i "; }else{ $next .= " $i ";//他はリンク } } echo " [ Page: $next ]";//[12 3 4]
}
echo " . |