【PHP+MySQL】「General error: 1366 Incorrect string value」エラーの解決方法
PHP+MySQL(PHPMyAdmin)で開発をしている時に起こった
General error: 1366 Incorrect string value
このエラー…コードが間違っているのかと何回も見直したけど、間違っていたのはDBのテーブル設定の方だった
エラー該当箇所
$statemenにはSQL文が入っており、execute()がfalseになっています。
$statement->bindParam(':user_id', $user_id); $statement->bindParam(':title', $title); $statement->execute(); var_dump($statement->execute()); // false
原因&解決策
PHPMyAdminにテーブルを作成する際に、照合順序の指定が間違っていました。 正しく動かすには、utf8_general_ciにする必要があります。
❌ latin1_swedish_ci
⭕️ utf8_general_ci
また、既にテーブルを作成してから変更するならテーブルだけでなく、カラムの照合順序も変更します。
これで動きました;;