以前使用していた Web サービスをコピーしようとしています。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ページは次のように設定されています:
$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"}}]}
データベースに実際に何かがあり、スウェーデン語の「åäö」文字に関連しているように見えるnullの結果が得られますが、これは以前は問題になりませんでした。実際に、同じことを試した別のデータベースからテーブルをエクスポートしようとしましたが、新しい値の入力を開始するまで機能しました。
何かご意見は?
編集: これは、現在データベース内の 2 つの値です。
desk info
fragannanananana 4353
arhåaöafghsgjädsiahäkömgdsjnö 3413