2017-09-17 12 views
0

特殊文字を含むエントリの挿入および更新に問題があります。たとえば、更新のための :$ updateArrayを構築した後、私は次の関数があります。 public function updateVideo($id, $updateArray) { $this->db->where("ID", $id); return $this->db->update("videos", $updateArray); }データベースへの特殊文字の挿入(コードネイター)

をしかし、値がたとえばAの特殊文字を、持っているとき、それはAでデータベースエントリを更新します。これはすべての特殊文字(éáèàなど)にあります。

私は$ updateArrayをダンプし、特殊文字はそこに問題ありません。私は最後のクエリをecho'dし、それもそこに問題ありません。 phpMyAdminで最後のクエリを直接実行しても、問題ありません。それはクエリを構築した後に間違っているように見えるので、それを実行するとき。

のphpMyAdminの列順序はlatin1_swedish_ciています。私は$ config ['charset'] = 'iso-8859-1';を設定しました。データベース設定には、 'char_set' => 'latin1'、 'dbcollat​​' => 'latin1_swedish_ci'もあります。

私が間違っている場所を特定するのに役立つ人がいますか?ありがとう! DBCOLLATを変更することにより、

+0

UTF-8を設定しているので、このSOの答えはあなたがそれを見つけるのに役立つでしょうか? https://stackoverflow.com/questions/279170/utf-8-all-the-way-through – ourmandave

+0

@ourmandave私はこれらの手順に従っていますが、それは動作しませんでした。 –

+0

奇妙なことは、CIがビルドするクエリ(私はエコーすることができます)を手動で実行するとうまくいくということです。 CIがそれを実行するとき、それは間違っています。 –

答えて

0

試し

+0

これは助けにはなりませんでしたが、提案に感謝します –

0

をutf8_unicode_ci内にする問題は、ほとんどの時間、1つの小さなミスとした

この変更:

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> 

へ:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
関連する問題