<?
header( "Content-Type: text/html; Charset=shift_jis" );
header( "pragma: no-cache" );
header( "Expires: Wed, 31 May 2000 14:59:58 GMT" );
header( "Cache-control: no-cache" );
require_once("model.php");
mb_regex_encoding('SJIS');
foreach( $_GET as $Key => $Value ) {
$_GET[$Key] = str_replace("&","&",$_GET[$Key]);
$_GET[$Key] = str_replace("<","<",$_GET[$Key]);
$_GET[$Key] = str_replace(">",">",$_GET[$Key]);
// シングルクォート
$_GET[$Key] = str_replace("\\'","'",$_GET[$Key]);
// ダブルクォート
$_GET[$Key] = str_replace("\\\"",""",$_GET[$Key]);
// データフォーマットが CSV なので、カンマを変換します
$_GET[$Key] = str_replace(",",",",$_GET[$Key]);
// 入力データ中の漢字部分以外の全ての \ が漢字の¥に変換されます
$_GET[$Key] = mb_ereg_replace( '\x5c\x5c', '¥' ,$_GET[$Key]);
// 漢字の後ろに付加された \ を削除します( SHIFT_JIS 用 )
$_GET[$Key] = mb_ereg_replace( '\x5c', '' ,$_GET[$Key]);
}
//print "<PRE>";
//print_r($_GET);
//print "</PRE>";
$fname = "data.csv";
// 送信ボタンが押されていません
if( $_GET['send'] == '' ) {
}
// 入力がありました
else {
// 入力エラーのチェック
$ret = check_input( );
// 入力時のエラーが無かった時の処理
if ( $ret ) {
$a = @file_get_contents($fname);
// テキストファイル( CSV ) のキャラクタセットは、EUC-JPです
$a = mb_convert_encoding($a, "SHIFT_JIS", "EUC-JP");
$_GET['main'] = str_replace(PHP_EOL,"<br>",$_GET['main']);
$_GET['main'] = str_replace("\r","",$_GET['main']);
$a = "{$_GET['subject']},{$_GET['name']},,{$_GET['main']}" . PHP_EOL .$a;
$shift_jis = $a;
// テキストファイル( CSV ) のキャラクタセットは、EUC-JPです
$a = mb_convert_encoding($a, "EUC-JP", "SHIFT_JIS");
file_put_contents($fname,$a);
// ファイル更新後、初期画面に移動します
header( "Location: {$_SERVER['SCRIPT_NAME']}");
}
}
// *********************************************************
// 以下は画面を作成している部分です
// *********************************************************
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<HTML>
<BODY>
<div style='width:400px; margin: 0 auto 0 auto;'>
<span style='font-size:bold;color:#FF0000'><?= $_GET['error'] ?></span>
<FORM>
<INPUT type="text" name="subject" size="30" value="<?= $_GET['subject'] ?>"><br>
<INPUT type="text" name="name" size="30" value="<?= $_GET['name'] ?>"><br>
<TEXTAREA name="main" cols="50" rows="8"><?= $_GET['main'] ?></TEXTAREA>
<INPUT type="submit" name="send" value="送信">
</FORM>
</div>
<?
// *********************************************************
// このコードは、繰り返し部分で、直接 print で出力して
// HTML を完成させるサンプルです
// *********************************************************
require_once("css.php");
// 行の最後に改行文字を追加しない
// @ はエラーが起きてもなにもしないようにします
// エラーの時は、$row は false になるので、空の配列をセットしています
$row = @file("data.csv", FILE_IGNORE_NEW_LINES );
if( !$row ) {
$row = array();
}
print "<HR>";
print "<TABLE style='width:400px; margin: 0 auto 0 auto'>";
foreach( $row as $value ) {
$value = mb_convert_encoding($value, "SHIFT_JIS", "EUC-JP");
$col = explode_by_name( $value );
// 行の作成
print "<TR><TD class=sep></TD></TR>";
print "<TR>";
print "<TD>";
print "<TABLE style='width:100%'>";
print "<TR><TD class=ttl style='width:90px;'>タイトル</TD><TD>{$col['タイトル']}</TD></TR>";
print "<TR><TD class=ttl>お名前</TD><TD>{$col['氏名']}</TD></TR>";
print "<TR><TD colspan=2>{$col['本文']}</TD></TR>";
print "</TABLE>";
print "</TD>";
print "</TR>";
}
print "</TABLE>";
?>
</BODY>
</HTML>