PHPapiの関数を呼び出してデータベースに行を挿入するjavascriptコードがあります。
var url = 'http://myapi/OfertasVentaOnline/api.php?method=update&function=categoria&id='+id+'&idCategoria='+id_categoria+'&descripcion='+descripcion+'&format=json';
$.getJSON(url, function (data){
});
このURLのサンプル:
"http://myapi/OfertasVentaOnline/api.php?method=create&function=categoria&id=9999&idCategoria=3&descripcion=test%new%category&format=json"
ここに示すように、URLでdescripcionパラメーターの%のスペースを置き換えます。URLは正しく作成されます。
次に、呼び出しを取得してデコードするAPIを取得しました。パラメータをデコードして取得するために使用する関数で:
$descripcion_cool = str_replace("%"," ",$_GET['descripcion']);
echo utf8_decode($descripcion_cool);
$query = 'INSERT INTO `Categorias`(`idCamping`, `idCategoria`, `descripcion`) VALUES (
"'.mysql_real_escape_string($_GET['id']).'",
"'.mysql_real_escape_string($_GET['idCategoria']).'",
"'.mysql_real_escape_string($descripcion_cool).'")';
これはこれを出力します:
test new?tegoryINSERT INTO `Categorias`(`idCamping`, `idCategoria`, `descripcion`) VALUES (
"9999",
"3",
"test new�tegory")null
ご覧のとおり、phpはurlパラメータにいくつかの特殊文字を追加します。私は何をしているのですか?ありがとう
PD:私のphpファイルに追加しようとしました:
header('Content-type: text/plain; charset=utf-8');
しかし、それは同じことを続けます。
前もって感謝します