web-dev-qa-db-ja.com

MySQL SELECTクエリのエコー結果

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)を返します

7
user2850226

クエリをエコーし​​ようとしている場合は、変数にクエリを作成してから変数をエコーするのが最適です。

$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);

PHPマニュアル: http://php.net/manual/en/mysqli.query.php

9

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の後

2
araj

おそらく、最初に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拡張で構成する必要があります。

0
mushroom

$ result変数をvar_dumpする場合、それはmysqli結果オブジェクトです。データを返したい場合は、結果をmysqli_fetch_関数に渡す必要があります。

0