我正在使用mysql和php with angular这是发布数据的代码
app.controller('buscar', function ($scope, $http) {
$scope.postData = function () {
var request = $http({
method: "POST",
url: 'busqueda.php',
data: {
cedula:$scope.cedula
},
headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8' }
}).then(function successCallback(response) {
$scope.datos = response.data;
console.log($scope.datos);
},function(response) {
$scope.error= response.statusText;
console.log($scope.error);
});
}
});
我的php是:
$sql1 = "(SELECT * FROM `presentadas` LEFT JOIN `desembolsos` ON presentadas.`CLI_IDENTIFICACION` = desembolsos.`IDENTIFICACION` WHERE presentadas.`CLI_IDENTIFICACION` = '".$cedula."')";
$result1 = $conn1->query($sql1);
if ($result1->num_rows > 0) {
while($row1 = $result1->fetch_assoc()) {
$datos1[]=$row1;
}
echo json_encode($datos1);
}else{
echo "No se encontraron datos en presentadas";
}
我发布了一个名为cedula的数字,这是我在DB中搜索的数字,它是相应的行,正如我所说,它适用于数据库中列出的一些数字,但与其他数字不相符,在chrome的开发者控制台中,当我用console.log()显示响应时,它什么也没显示。 Image 1: here is when is failing, clicking in the console log record, it shows me error in line console.log($scope.datos) I guess it is not getting data
Image 2:Here is a working example showing the json response
我不知道为什么我会遇到这种不一致的情况。请帮帮我!!!!
答案 0 :(得分:0)
回复:Ñ is raplaced with �
在Trouble with UTF-8 characters; what I see is not what I stored
中搜索“黑钻石”它表示要么你没有以utf-8开头,要么没有连接声明客户端有utf-8字节。 latin1中的Ñ
是十六进制D1
。在utf8中,它是C391
。
答案 1 :(得分:0)
我解决了它在查询之前在我的代码中设置这一行
$mysqli->set_charset("utf8")
谢谢