0

最初に、一重引用符を含む文字列を追加しようとすると、データベースはエラー メッセージを返していました..

だから私はクエリの前にその文字列にaddslashesを追加しました。

追加スラッシュを追加した後、文字列はデータベースで次のようになります。何らかの理由で、バックスラッシュが常に挿入されるわけではありません。

ここに画像の説明を入力

このシナリオを経た後、見積もりを処理する方法を提案してください

Case1: アドスラッシュの使用

私はすでに巨大なコードを持っています.挿入前にaddslashesを使用すると、selectクエリの後にstripslashesも使用して、すべての結果で\を削除する必要があります。これにより、Codeigniterのコントローラーとモデルに多くの変更が加えられます。

Case2: プラスラッシュなし

私がaddslashesまたはmysql_escapeを使用しない場合、私のデータベースでは一重引用符を保存できません。

文字セットをutf8mb4_general_ciに変更しましたが、まだ役に立ちません。また、 config.phpの文字セットにもutf8mb4 charsetが含まれていることを確認しました。

効率的な方法の提案はありますか?

4

1 に答える 1

0

私は解決策を見つけました。これが他の人に役立つことを願っています

MySql を 5.5.3+ に更新し、charset utf8mb4_general_ci. を使用します。データ型が longtext であることを確認してください

それでおしまい。私の知る限り、addslashes と stripslashes を使用する必要はありません。

絵文字のThanksにも対応

于 2014-02-21T11:58:25.797 に答える