<html>
<body bgcolor="#EEFFFF">
<blockquote>
<form method="post" action="<? echo $_SERVER["PHP_SELF"]; ?>">
<tt>
お名前 : <input name="name" type="text" size="40"><br>
E-Mail : <input name="email" type="text" size="40"><br>
<textarea name="com" cols="60" rows="5"></textarea><br>
<input type="submit" value=" Send "><br>
</tt>
</form><hr>
<?php
// extract($_POST);推奨しません
/* 設定 */
$logfile = "sample2.txt";//ログファイル名
$viewmax = 10; //表示行数
$logmax = 100; //保存最大行数
/* 書き込み処理 */
if(isset($_POST['name']) && isset($_POST['com'])){
/* HTMLタグをエントリに変換 */
$com = htmlspecialchars ($_POST['com']);
$name = htmlspecialchars ($_POST['name']);
/* Shift-JISの場合バッククォートを除去 */
if(get_magic_quotes_gpc()){
$com = stripslashes($com);
$name = stripslashes($name);
}
$com = str_replace("\r\n", "\r", $com);//Win系は\r\n
$com = str_replace("\r", "\n", $com); //Mac系は\r
$com = str_replace("\n", "<br>", $com); //\nを<br>に
/* メールの場合リンク */
if($email) $name = "<a href=\"mailto:$email\">$name</a>";
/* 日付けのフォーマット */
$now = gmdate("Y年m月d日(D) H:i:s",time()+60*60*9);
/* ログのフォーマット */
$dat = "<font size=4 color=blue><b>$name</b></font>さん <small>$now</small>
<p><blockquote> $com </blockquote><hr>\n";
/* ログに書き込む */
$lines = file($logfile); //いままでのログを配列に読み込む
$fp = fopen($logfile, "w"); //ログをオープン(空になる)
fputs($fp,$dat); //データを書き込む(先頭に)
for($i = 0; $i < $logmax-1; $i++) //いままでの分を追記
fputs($fp, $lines[$i]); //(配列0-98→現ログ1-99行目)
fclose ($fp);
}
/* 表示処理 */
$lines = file($logfile);
for($i = 0; $i < $viewmax; $i++)
echo $lines[$i];
?>
</blockquote>
</body></html>