最初に、JQuery $.ajax 関数の contentType 属性を変更しようとしましたが、うまくいきませんでした:
$.ajax({
url: "insertar_datos.php",
type: "post",
contentType: "application/x-www-form-urlencoded;charset=ISO-8859-15",
data: serializedData
そのため、JQuery-ajax で UTF8 以外の文字セット エンコーディングを使用すると、いくつかの問題があることがわかりました。
http://forum.jquery.com/topic/serialize-problem-with-latin-1-iso-8859-1-and-solution
次に、php 関数 utf8_decode() を試してみました。
utf8_decode($_POST['cuando']);
そしてそれはうまくいきました。このリンクで見つけたのは、次のことです。
「utf8_decode は、UTF-8 でエンコードされた文字列を ISO-8859-1 に変換するだけです。より適切な名前は、utf8_to_iso88591 です。テキストが既に ISO-8859-1 でエンコードされている場合、この関数は必要ありません。 ISO-8859-1 を使用したくない場合は、この機能は必要ありません。」
したがって、誰かが iso-8859-1 を使用していて、ajax で投稿されたデータに問題がある場合。utf8_decode() で確実にデコードできます。投稿する前にすべてのデータをデコードする簡単な方法があるかもしれませんが、ご覧のとおり、私にはうまくいきませんでした。
誰かがより良い/より効率的な方法を知っていれば、喜んであなたの答えを選びます.
それが誰かを助けることを願って、
よろしく!