• HOME
  • Diary
  • mySqlの日本語が登録できない件について

mySqlの日本語が登録できない件について

ちょっと調べてみた。

http://zavieru.blog77.fc2.com/?no=275
あやしそうなのはこれ

HTML自体の文字コードのことはきになるけども
タブン大丈夫だったとおもうからこっち方面がきになる。

追記

現象把握

サーバーの文字コードの設定もUTF8や日本語設定にしてなかったというのもあるが
こちらは小さな影響の話。

大きな原因としては
配列にいれた文字列をsqlの形式にあわせた状態にしていなかったから。

[シングルクオート]文字列[シングルクオート]

ではphpからSQLに投げた場合文字列と認識しないので
SQLに文字列としてなげるためには
[シングルクオート][シングルクオート]文字列[シングルクオート][シングルクオート]

にする必要がある。

上記の記入の仕方はphpでは

'¥'こんなかんじ¥''

になる

ただし、このままだとフォームなどからの投稿に対応した場合
sql文を投稿できてしまうのでそれらを回避するために
sql_escape_string()

sql_escape_numeric()
を使い中に入れる文字列等をエスケープ処理することが絶対となる。