【发布时间】:2015-10-03 21:54:01
【问题描述】:
我正在使用 android 发送数据,并且我有一个带有字母“ž”的变量。当 php 将其发布到数据库中时,它变成了“?”。它不是android问题总线android正在发送正常值,数据库是utf_8所以问题是在解析到php时。
代码:
<?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);
?>
【问题讨论】:
-
您对 SQL 注入持开放态度。
require_once('DB_connect.php');是做什么的,我认为连接会在那里建立..