0

我正在尝试复制我以前使用过的网络服务。它从 mySQL 数据库中获取数据,然后在 json 中回显。它以前工作过很多次,但现在我似乎无法让它工作。

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

#   Kolumn  Typ Kollationering  Attribut    Null    Förvalt
1   id  int(11)         Nej Inget   AUTO_INCREMENT     
2   desk    text    utf8_swedish_ci     Ja  NULL
3   info    varchar(4)  utf8_swedish_ci     Ja  NULL

然后我的 php-page 设置如下:

$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"}}]}

我得到一个空结果,我实际上在数据库中有一些东西,它似乎与瑞典语中的“åäö”-chars 相关,但这从来都不是问题。我实际上尝试从另一个数据库中导出一个表,在那里我尝试过同样的事情,并且在我开始输入新值之前它一直有效。

有什么想法吗?

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

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

1 回答 1

1

我解决了。只需添加 mysql_query('SET CHARACTER SET utf8'); 它就像一个魅力!

于 2013-10-04T15:15:01.433 回答