我用android发送数据,我有一个变量有一个“ž”。当php将其发布到数据库中时,它变成了“?”。它不是android问题总线android正在发送正常值,数据库是utf_8所以问题是解析到php时。
CODE:
<?php
header('Content-type: application/json; charset=utf-8');
require_once('DB_connect.php');
$db = new DB_connect();
$var=0;
$str = preg_replace_callback('/\\\\u([0-9a-fA-F]{4})/', function ($match) {
return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UTF-16BE');
}, $str);
$con= new mysqli ("localhost","infoizla_boris","internet1","infoizla_boris");
$place=$_POST['place'];
$name=$_POST['name'];
$number=$_POST['number'];
echo $name;
$statement=mysqli_prepare($con,"insert into Ocjena (user,place,ocjena) values (?,?,?)");
mysqli_stmt_bind_param($statement,"sss",$name,$place,$number);
mysqli_stmt_execute($statement);
mysqli_stmt_close($statement);
if(!mysqli_stmt_execute($statement)){
$sql="update Ocjena set ocjena='$number' where user='$name' && place='$place'";
$rez=$con->query($sql);
}
mysqli_close($con);
?>
答案 0 :(得分:0)
你必须告诉与use utf-8的连接
$con= new mysqli ("localhost","infoizla_boris","internet1","infoizla_boris");
$con->set_charset("UTF-8");