apache - ajax +json +php提交mysql数据库 中文乱码(wamp server 本地测试)求解?
程序员文章站
2022-06-13 11:08:08
...
之前用普通表单提交注册数据的时候就没有这个问题,请问是因为使用了ajax或者是json相关的格式转换函数的时候出现的错误吗?
问题如图:
代码如下:
$('#pro-edit-done').bind('click', function()
{
//获取要传递的数据
var prodata = {};
prodata.lid = ;
console.log(prodata.lid);
prodata.id = $("#pro_id").val();
prodata.name = $("#pro_name").val();
var data = JSON.stringify(prodata);
console.log(data);
$.ajax
({
type: "POST",
url : "./pro-edit-php.php",
data: {data},
success:function(data)
{
console.log(data);
$('.pro-name').text(prodata.name);
}
});
});
});
php文件:
id;
$lid = $data->lid;
$name =$data->name;
$query = "insert projects (proj_name,proj_leader_id) values ('$name','$lid')";
$tes_query = mysqli_query($link,$query);
if ($tes_query) {
echo $name;
}
?>
之前用普通表单提交注册数据的时候就没有这个问题,请问是因为使用了ajax或者是json相关的格式转换函数的时候出现的错误吗?
回复内容:
之前用普通表单提交注册数据的时候就没有这个问题,请问是因为使用了ajax或者是json相关的格式转换函数的时候出现的错误吗?
问题如图:
代码如下:
$('#pro-edit-done').bind('click', function()
{
//获取要传递的数据
var prodata = {};
prodata.lid = ;
console.log(prodata.lid);
prodata.id = $("#pro_id").val();
prodata.name = $("#pro_name").val();
var data = JSON.stringify(prodata);
console.log(data);
$.ajax
({
type: "POST",
url : "./pro-edit-php.php",
data: {data},
success:function(data)
{
console.log(data);
$('.pro-name').text(prodata.name);
}
});
});
});
php文件:
id;
$lid = $data->lid;
$name =$data->name;
$query = "insert projects (proj_name,proj_leader_id) values ('$name','$lid')";
$tes_query = mysqli_query($link,$query);
if ($tes_query) {
echo $name;
}
?>
之前用普通表单提交注册数据的时候就没有这个问题,请问是因为使用了ajax或者是json相关的格式转换函数的时候出现的错误吗?
连接成功后mysql进行一次set names utf8
在php文件中打印一遍var_dump $_POST接收到的数据看看有错没,然后检查数据库的编码charset是utf8还是别的,保证三码合一
前端获取到的数据是乱码的吗?
后端接收到的数据是乱码吗?
插入数据库前的数据是乱码吗?
逐步锁定产生乱码的地方,进行检查;