私はこれを使用してデータをデータベースに保存していました。
$this->request->data['Post']['body'] = utf8_decode($this->request->data['Post']['body']);
そのように、アクセント付きのようないくつかの「特殊」文字をDBに保存できます:áéíóú問題なく。
次に、HTMLとSQLインジェクションからアプリケーションを保護しようとし、次のようにサニタイズを使用しました。
$this->request->data['Post']['body'] = Sanitize::html($this->request->data['Post']['body']);
これで、私のテキストは次のようにデータベースに保存されます。
á = á
é = é
í = í ...etc
そして、私はそれを望んでいません。また、DBの私のフィールドには最大文字数があり、これは役に立ちません。
また、encode = true、encode = false、またはencode ='utf8'を使用してsanitizeでオプションparamを使用しようとしましたが、何も変更されていないようです。
私は何をすべきか?ありがとう。
更新1
また、コントローラーでhtmlentities関数を使用しようとしましたが、これがデータベースに挿入されます。
Ã