掲示板 ver.1.2
前回のLv.1.1は文字化けするので、修正しました。修正点はこちら。
- htmlspecialcharsしてからDB書き込みは文字化けの原因なので、表示前に移動
- SQLインジェクション対策でmysql_escape_stringを追加
<body>
/ *****DB情報の読み込み***** /
include_once("ini.php");
/ *****DBへ接続、DBの選択***** /
$con = mysql_connect(DB_HOST,DB_USER,DB_PASS);
mysql_select_db(DB_NAME);
/ *****フォーム表示***** /
echo '';
echo '氏名:';
echo '';
echo 'メッセージ:';
echo '';
echo '';
echo '';
/ *****エスケープ***** /
$name_d = mysql_escape_string($_POST["name"]);
$msg_d = mysql_escape_string($_POST["msg"]);
/ *****utf-8にエンコーディング***** /
$name_d = mb_convert_encoding($name_d,"utf-8","utf-8,euc-jp,sjis");
$msg_d = mb_convert_encoding($msg_d,"utf-8","utf-8,euc-jp,sjis");
/ *****「name」にデータがあるときデータをDBに挿入***** /
if($name_d !== ""){
mysql_query("INSERT INTO twi_tb (name,msg) VALUES ('$name_d','$msg_d')");
}
/ *****タグ削除、twi_tbの全データ表示***** /
$re = mysql_query("SELECT * FROM twi_tb");
while($arr = mysql_fetch_array($re)){
echo htmlspecialchars($arr[0]);
echo ":";
echo htmlspecialchars($arr[1]);
echo ":";
echo htmlspecialchars($arr[2]);
echo ":";
echo htmlspecialchars($arr[3]);
echo "";
}
/ *****DB切断***** /
mysql_close($con);
?>
body>