我正在对我所拥有的网站上托管的php脚本执行JsonP请求。 php脚本从DB获取结果并将它们作为Json返回。
问题是数据库包含希伯来字符,我把它们作为'??????'在回应中。
知道如何解决这个问题吗?
这是js代码:
$.getJSON("http://flyfish.co.il/appdiet?callback=?",function(data){
$('p').text(data[0].food_name);
});
和php代码:
<?php
header('Content-type: text/html; charset=UTF-8');
require_once 'config.php';
$mysqli = new mysqli(HOST,USERNAME,PASSWORD,DB_NAME);
$query = "SELECT * from mytable";
if ($result = $mysqli->query($query))
{
$data = array();
while ($row = $result->fetch_assoc()) {
$data[] = $row;
}
echo $_GET['callback'].'('.json_encode($data).')';
}
else {
echo $_GET['callback'].'('.$mysqli->error.')';
}
$mysqli->close();
答案 0 :(得分:1)
尝试在set names 'utf8';
声明之前添加select
。