2011-02-03 7 views
0

AJAXとOracleデータベース用のjQueryを使用したPHPスクリプトでcharsetに問題があります。 Webフォームを使用してjQueryでAjax経由で更新クエリを送信しているときに、アクセント文字がUTF8で送信されているように見えて、データベースに問題があります。私は私のコードのどの部分にもUTF-8の定義がないので、分かりません。jQueryでアクセントの問題AJAXとOracleデータベース

誰かが助けることができますか? NLS_CHARACTERSET = WE8MSWIN1252

Webページのメタ:

ここ

であるjQueryの:

$.ajaxSetup 
    ({ 
     'beforeSend' : function(xhr) 
     { 
      if (xhr.overrideMimeType!=undefined) 
      { 
       xhr.overrideMimeType('text/html; charset=ISO-8859-1'); 
      } 
     } 
    }); 
$('input.f_req_field').change(function() 
    { 
     var p=$(this).attr("name"); 
     var v=$(this).attr("value"); 
     $.post("index.php", { mode:"ajax_update", param: p, valeur: v } 
       , 
        function(data){ 
        //alert("Data Loaded if no errors here : " + data); 
        },"html" 
       ); 

Connectionへ

私はNLS_DATABASE_PARAMETERSでOracleデータベースを持っている:ここでのコードの貴様の部分がありますPHPのデータベースは:

$link=oci_connect($user,$pass,$host,"WE8ISO8859P1"); 

クエリの打ち上げは、次のとおりです。

$result_tmp = oci_parse($link,$req) OR print("Error"); 
$tmp= oci_execute($result_tmp,OCI_COMMIT_ON_SUCCESS); 

おかげ

答えて

0

あなたは、AJAXセットアップであなたに

 

$.ajaxSetup({ 
    type: "GET", 
    cache: false, 
    timeout: 10000, 
    scriptCharset: "UTF-8", //replace UTF-8 with yours 
    contentType: "application/x-www-form-urlencoded; charset=UTF-8" //replace UTF-8 with yours 
}); 
 
をAJAXリクエストの文字セットを設定する必要があります