Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在json中,只有一个数据库列显示为空_Php_Mysql_Json - Fatal编程技术网

Php 在json中,只有一个数据库列显示为空

Php 在json中,只有一个数据库列显示为空,php,mysql,json,Php,Mysql,Json,我正在尝试复制我以前使用过的Web服务。它从mySQL数据库获取数据,然后在json中对其进行响应。它以前工作过很多次,但现在我似乎无法让它工作 我的数据库是这样设置的(我知道它是瑞典语的,但希望你能得到): 然后我的php页面设置如下: $query = "SELECT * FROM `$table` LIMIT 100 "; $result = mysql_query($query,$conn) or die('Errant query: '.$query); $posts = ar

我正在尝试复制我以前使用过的Web服务。它从mySQL数据库获取数据,然后在json中对其进行响应。它以前工作过很多次,但现在我似乎无法让它工作

我的数据库是这样设置的(我知道它是瑞典语的,但希望你能得到):

然后我的php页面设置如下:

$query = "SELECT * 
FROM  `$table`
LIMIT 100
";
$result = mysql_query($query,$conn) or die('Errant query:  '.$query);

$posts = array();
if(mysql_num_rows($result)) {
while($post = mysql_fetch_assoc($result)) {
  $posts[] = array('post'=>$post);
}
}

header('Content-type: application/json');
echo json_encode(array('posts'=>$posts));
我得到的结果很奇怪:

{"posts":[{"post":{"id":"1","desk":"blablabla","info":"4353"}},{"post":    {"id":"2","desk":**null**,"info":"3413"}}]}
我得到了一个空的结果,实际上我在数据库中有一些东西,它似乎与瑞典语中的“åäö”-字符有关,但这以前从来都不是问题。实际上,我尝试了从另一个数据库导出一个表,在那里我也尝试了同样的方法,直到我开始输入新的值

有什么想法吗

编辑:这是当前数据库中的两个值

desk    info
fragannanananana    4353
arhåaöafghsgjädsiahäkömgdsjnö   3413

我解决了。只需添加mysql_查询('SET CHARACTER SET utf8');它就像一个符咒

这个问题没有解决方案?我也有同样的问题,但我的一条记录中存储了一些葡萄牙语文本。我记不清我是如何解决这个问题的,但上次我使用这个Web服务时,我通过iPhone应用程序将它添加到数据库中,然后它被改成了“正确”字符。然后,当我有一个具有正确字符集的php页面时,它会正常打印。很抱歉,我不能给出更好的答案,我解决了。只需添加mysql_查询('SET CHARACTER SET utf8');它就像一个符咒!将其添加为答案:)
desk    info
fragannanananana    4353
arhåaöafghsgjädsiahäkömgdsjnö   3413