PHPでクエリの結果を確認する方法


  1. mysqli_num_rowsを使用する方法:

    <?php
    // データベース接続の設定
    $servername = "localhost";
    $username = "ユーザー名";
    $password = "パスワード";
    $dbname = "データベース名";
    
    // データベースに接続
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    // クエリの実行
    $result = $conn->query("SELECT * FROM テーブル名 WHERE 条件");
    
    // 結果の行数をチェック
    if ($result->num_rows > 0) {
       // 結果が存在する場合の処理
       while ($row = $result->fetch_assoc()) {
           // 結果の処理
       }
    } else {
       // 結果が存在しない場合の処理
    }
    // データベース接続を閉じる
    $conn->close();
    ?>
  2. PDOのrowCountを使用する方法:

    <?php
    // データベース接続の設定
    $servername = "localhost";
    $username = "ユーザー名";
    $password = "パスワード";
    $dbname = "データベース名";
    
    // データベースに接続
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    
    // クエリの実行
    $stmt = $conn->prepare("SELECT * FROM テーブル名 WHERE 条件");
    $stmt->execute();
    
    // 結果の行数をチェック
    $row_count = $stmt->rowCount();
    if ($row_count > 0) {
       // 結果が存在する場合の処理
       while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
           // 結果の処理
       }
    } else {
       // 結果が存在しない場合の処理
    }
    // データベース接続を閉じる
    $conn = null;
    ?>
  3. fetchを使用する方法:

    <?php
    // データベース接続の設定
    $servername = "localhost";
    $username = "ユーザー名";
    $password = "パスワード";
    $dbname = "データベース名";
    
    // データベースに接続
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    // クエリの実行
    $result = $conn->query("SELECT * FROM テーブル名 WHERE 条件");
    
    // 結果を1行ずつ取得し、処理
    while ($row = $result->fetch_assoc()) {
       // 結果の処理
    }
    // 結果の行数をチェック
    $num_rows = $result->num_rows;
    if ($num_rows > 0) {
       // 結果が存在する場合の処理
    } else {
       // 結果が存在しない場合の処理
    }
    // データベース接続を閉じる
    $conn->close();
    ?>

上記の方法を使用することで、データベースクエリの結果を確認し、結果に応じた処理を行うことができます。それぞれの方法は異なるデータベース接続き:

接拡張を使用していますが、いずれの方法でも同様の結果を得ることができます。必要に応じて適切な方法を選択してください。

このようなコードを使用することで、データベースクエリの結果が存在するかどうかを確認し、結果に応じた処理を実行することができます。