我正在使用 jquery/JS 和 PHP 进行简单的客户端/服务器通信。它工作正常,直到 a'.'
包含在数据中。
尝试使用以下标题:
asdf-wq1 --> works
test1 --> works
bigip1.local --> '.' is replaced with '_'
我已经将该escape()
函数添加到我的代码中,但结果是一样的。
function xy(){
for (var i = 0; i < nodes.length; i++) {
var xy = escape(nodes[i].title) +"=" +escape(nodes[i].translate.x + "/" + nodes[i].translate.y);
$.ajax({
url: 'save_layout.php',
data: xy,
dataType: "text",
type: 'post',
success: function(output) {
$("#output").html(output);
},
error: function (response, status, error) {
alert("error" + response.responseText);
}
});
}
}
PHP:
foreach($_POST as $name=>$value) {
echo "$name $value \n";
}
Firebug 输出请求:
发布 http /frontend/save_layout.php 200 正常 186 毫秒 jquery....min.js (Zeile 4) HeaderPostAntwortHTML 参数application/x-www-form-urlencoded bigip1.local 470/390 奎尔 bigip1.local=470/390
Firebug 输出(响应):
bigip1_local 470/390
正如你所看到的——它似乎被正确地发送到了服务器,但在服务器上一读到我们的$_POST
——'.'
就'_'
突然出现了。
希望有人可以在这里帮助我!