EC-CUBE 4.2以上・MYSQL方で
商品のカスタマイズや顧客の属性で複数選択のオプション作るとなるとJSON形式にすると思いますが・・・・
エラーになる。プログラムは合っている・・・・
JSONがバイナリー渡しになっているエラーに
「SQLSTATE[22032]: Cannot create a JSON value from a string with CHARACTER SET ‘binary’」
/app/config/eccube/packages/doctrine.yaml にDBとの接続が書いてある。
しかし、デフォルトは「pdo_sqlite」の設定で、セットも細かく書いていない。
こんな感じでしっかり設定を書かないと勝手にバイナリーに・・・
doctrine: dbal: # × driver: 'pdo_sqlite' これは削除 driver: 'pdo_mysql' # MySQLを明示 server_version: "%env(DATABASE_SERVER_VERSION)%" # charset: '%env(DATABASE_CHARSET)%' charset: utf8mb4 # これが重要です! options: 1002: "SET NAMES 'utf8mb4'" # for mysql only default_table_options: charset: 'utf8mb4' collation: 'utf8mb4_bin'
以上、他も変換処理してないか?を確認してね。