文でget_result()を使用すると、有効なオブジェクトの代わりにfalseが返されます。PHP mysqli get_result()はfalseを返します
function getGames() {
$ret = array();
$stmt = DB::getConnection()->prepare("SELECT * FROM games ORDER BY position DESC");
$stmt->execute();
var_dump($stmt);
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo "read one entry";
}
return $ret;
}
記載されているのvar_dump戻り、私はどんな情報フォームを抽出することはできません。このメッセージ:この作業を取得するために
<?php
class DB {
private static $connection;
static function getConnection() {
if (!isset($connection) || $connection->ping()) {
$connection = new mysqli("localhost", "user", "pw", "db");
$connection->query("SET NAMES 'utf8'");
}
return $connection;
}
}
すべてのヘルプ:
object(mysqli_stmt)#3 (10) { ["affected_rows"]=> int(-1) ["insert_id"]=> int(0) ["num_rows"]=> int(0) ["param_count"]=> int(0) ["field_count"]=> int(5) ["errno"]=> int(2006) ["error"]=> string(26) "MySQL server has gone away" ["error_list"]=> array(1) { [0]=> array(3) { ["errno"]=> int(2006) ["sqlstate"]=> string(5) "HY000" ["error"]=> string(26) "MySQL server has gone away" } } ["sqlstate"]=> string(5) "HY000" ["id"]=> int(1) }
は私のDBクラスは、このようになります。
「エコー」の代わりに1つのエントリを読み込み、$ ret [] = $ row; '関数を呼び出してその値を変数に代入し、その変数を出力して何が来るのかを確認しますか? –
私はすでに '致命的なエラー:whileループがある行であるfile.phpの15行目のbooleanでfetch_assoc()メンバ関数を呼び出します。 – Sabbertran
静的メソッド内で' self :: $ connection '静的プロパティにアクセスします。あなたの "getConnection()"メソッドはすべての呼び出しで新しい接続を作成します –