StackOverflowには多くの例がありますが、私のコードではエラーが見えません。私はいくつかのチュートリアルに続き、このフォーラムからいくつかのコードをコピーしましたが、それでもエラーのバグがあります。PHPからJSONを取得するMySQL接続
マイCREATE TABLE
クエリ:
CREATE TABLE `e1_ENGLISH` (
`entry_id` int(11) NOT NULL AUTO_INCREMENT,
`words_e1` char(30) NOT NULL,
`date` date DEFAULT NULL,
`phonetic_e1` varchar(50) NOT NULL,
PRIMARY KEY (`entry_id`)
) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8mb4
私のPHPコード:
<?php
// establish connection
// mysqli contect (host, user, pass, db)
$conn = mysqli_connect("localhost","androidapp","password","myDB");
// check for connection success
if(!$conn) {
die("Error, could not connect: " . mysqli_connect_error());
}
// build query
$sql = "SELECT * FROM e1_ENGLISH";
$result = mysqli_query($conn, $sql); // fetch data
// convert result to array
$resArray = array();
while ($row = mysqli_fetch_assoc($result)) {
//$resArray[] = $row;
$resArray[] = utf8_encode($row);
}
// display result
echo json_encode($resArray);
// close connection
mysqli_close($conn);
?>
私は(utf8_encode
で)取得出力:
[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]
私はちょうど$resArray[] = $row;
で空白の画面を取得します
私はPHP、MySQLデータ、Webサーバを初めて使用しています。何か間違いが見つかることはありますか?さらに、私はスクリプトや何も持っていない、これはストレートPHPです。
ありがとうございます!
代わり 'fetch_array'又は' $ resArray [] =はutf8_encode($行[ 'put_column_name_hereを'])のいずれかを使用fetch_assoc' 'の; //すべてのためのwhileループにおいてそれを繰り返します「列」をクリックして –
を確認してください。 'fetch_assoc'と他の' fetch_'メソッドとの違いは何ですか?なぜ私はいくつかの例がそれを使用する理由を理解するのが難しいです。 – Frank
'fetch_assoc'は連想配列を与えたので、そこに列名を使う必要があります。 'fetch_array()'はあなたに両方のコンボ(数値+連想)を与えます。あなたは数値だけを得ることができます。その上にgoogleを確認してください –