PHPを独学するなら、Udemyの動画講座で
PHP 7も使えて快適な エックスサーバー

phpMyAdminなどからMySQLデータベースにデータを追加したときに「Warning: #1366 Incorrect string value: … for column … at row 1」のようなエラーメッセージが表示されることがあります。

「Warning: #1366 Incorrect string value: 」が表示される

「Warning: #1366 Incorrect string value: 」が表示される

入力したデータを確認すると文字化けしているはずです。

入力データが文字化けする

入力データが文字化けする

原因は、日本語ではないフィールドに日本語を入力したことが考えられます。

対策は、フィールド(またはテーブル・データベース)の文字コードを日本語に変更する方法があります。phpMyAdminで対処する例を紹介します。

問題が起きているテーブルが含まれるデータベース全体の文字コードを変更するには、データベースの「操作」メニューを選択します。個別テーブルのみを設定する場合はテーブルの「操作」メニュー(「その他」‐「操作」メニューの場合も)を選択して文字コードを変更します。

次の例では「utf8_general_ci」に変更しています。

データベースの文字コードを「utf8_general_ci」に変更

データベースの文字コードを「utf8_general_ci」に変更

個別のフィールドのみを設定する場合は、テーブルメニューから「構造」を開いてフィールドの照合順序が「latin1_swedish_ci」などのように日本語ではないことを確認します。「変更」をクリックして変更しましょう。

フィールドの文字コードが日本語ではないので変更する

フィールドの文字コードが日本語ではないので変更する

これでエラーメッセージが表示されなくなり入力したデータが文字化けしなくなります。

スポンサーリンク

こちらもどうぞ

こちらも参考にしてください

関連記事

MySQL

phpMyAdmin

PHPサンプルコード

PHP全般

PHP関数

WordPress

PHPの基礎が身に付いたかチェック!

PHP「直す力」養成ドリル
スポンサーリンク