我将数据从客户端发布到php,这是我的帖子数据在客户端中的显示方式:
我单击添加并将此字符串发布到php,其中ajax调用如何将发布的数据显示在ajax参数中;
//username ="Uğur Akkaynak" so its ok.
var params = {
action: "saveAdObjects",
username_: username,
}
$.ajax({
url: "../../Controller/ActiveDirectoryController.php5",
type: "POST",
async:false,
dataType: "json",
data: params,
success: function (result)...
在php文件中,我检查发布的变量:
var user = $_POST["username"]; //UÄŸur Akkaynak wtf!
所以问题很明显,php中的字符串坏了,我知道我需要在php文件中更改编码并尝试这些:
header('Content-type: text/plain; charset=utf-8');
utf8_encode($_POST["username"]);// Uğur Akkaynak
mb_convert_encoding ($_POST["username"],'utf-8'); // UÄŸur Akkaynak
我应该怎么办$ _POST [“username”]为'UğurAkkaynak',如发布于客户
答案 0 :(得分:0)
无需添加标题:
header('Content-type: text/plain; charset=utf-8');
要在客户端编码字符串,可以在ajax
函数中添加以下内容:
contentType:"application/x-javascript; charset:UTF-8"
$.ajax({
url: "../../Controller/ActiveDirectoryController.php5",
type: "POST",
async:false,
dataType: "json",
data: params,
contentType:"application/x-javascript; charset:UTF-8"
success: function (result)...
同时验证您的HTML-head是否包含:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
答案 1 :(得分:-1)
首先,您需要通过开发者控制台观察您的请求。
查找网络请求并查看参数值。
如果不正确,请尝试添加
contentType: "application/x-www-form-urlencoded;charset=utf-8",
进入你的ajax请求。