我使用jQuery在PHP中运行一个函数来从数据库中获取数据。
$.ajax({
url: 'service.php',
data: { functie: type, param: radiobutton },
dataType: 'json',
success: function (data) {}
});
一切正常。除了具有特殊字符的字符串在succes函数中返回null。例如:ñ
这里的答案解释如下: Special characters break json returned to jQuery
但它对我不起作用。
在php中我试过:
$result = mysql_query("SELECT * FROM wines");
$array = array();
while($row = mysql_fetch_assoc($result)){
$array[]=htmlentities($row);
}
谁知道如何确保一切都以良好的方式回归?
答案 0 :(得分:1)
在你的while语句中,你在数组上使用htmlentities
,而不是字符串(数组中的每个键都是数据库中的一列)。
您可以执行以下任一操作:
使用array_map:
while($row = mysql_fetch_assoc($result)){
$array[] = array_map("htmlentities", $row);
}
或更改你的while循环:
while($row = mysql_fetch_assoc($result)){
foreach ($row as $key => $value) {
$row[$key] = htmlentities($value);
}
$array[] = $row;
}