PHPでエコーしたいMySQL SELECTクエリがあります。どうすればいいですか? PHP.netヘルプセンターにリストされているすべてを試しましたが、理解できないか、探しているものではありません。
_$sql = "SELECT gamePlayerCount FROM mpTicTacToe_gameData WHERE gameId = " . $gameId;
$result = mysqli_query($mySqlConnection,$sql);
var_dump($result);
_
Var_dumpを使用してみましたが、返されるはずの2ではなくbool(false)
を返します
クエリをエコーしようとしている場合は、変数にクエリを作成してから変数をエコーするのが最適です。
$sql = "SELECT * FROM TABLE";
echo $sql;
結果を確認したい場合は、var_dump()を使用できます。
$results = mysqli_query($mySqlConnection, $sql);
var_dump($results);
編集への応答:mysqli_queryはエラーがある場合にfalseを返します。
このコードスニペットを使用して、エラーを確認します。
if (!$mysqli->query("SET @a:='this will not work'")) {
printf("Error: %s\n", $mysqli->error);
die();
}
$results = mysqli_query($mySqlConnection, $sql);
var_dump($results);
Mysqlは間もなく存在しなくなるため、mysqliを使用します。
データベースに接続するには:
$sqlHost = 'localhost';
$sqlUser = 'root';
$sqlPass = '';
$conn = new mysqli($sqlHost, $sqlUser, $sqlPass, 'db_name') ;
if($conn->connect_errno){
printf("Connect failed: %s\n", $conn->connect_error);
exit();
}
クエリを実行して印刷するには:
$result = $conn->query("SELECT * FROM someTable")
or trigger_error($conn->error);
$row = $result->fetch_array(MYSQL_BOTH);
echo $row['something']; // or echo $row[1]
編集
クエリが間違っています。 次のようになります
$sql = "SELECT gamePlayerCount FROM mpTicTacToe_gameData WHERE gameId = '" . $gameId ."';
あなたが忘れていました' gameIdの後
おそらく、最初にMySQLサーバーへの接続を開く必要があります。
$mysqli = new mysqli("localhost", "my_user", "my_password", "my_database");
if ($result = $mysqli->query("SELECT * FROM someTable")) {
var_dump($result);
$result->close();
}
これには、PHP=をmysqli
拡張で構成する必要があります。
$ result変数をvar_dumpする場合、それはmysqli結果オブジェクトです。データを返したい場合は、結果をmysqli_fetch_関数に渡す必要があります。