sql >> データベース >  >> RDS >> Mysql

PHPがMYSQLクエリの結果を表示しない

    $ sqlには3つのクエリがあるため、multi_query関数 http:/を使用する必要があります。 /php.net/manual/en/mysqli.multi-query.php

    また、最初のクエリを次のように変更できます:

    SET @uid = 0;
    SELECT @uid := ID FROM channels WHERE Used = 0 ORDER BY RAND() LIMIT 1);
    

    更新 コメント付きのすべての改善を加えて変更したコードのこのフラグメントを試すことができます。

    $sql = 'SET @uid = 0;';
    $sql .= 'SELECT @uid:= ID FROM channels WHERE Used = 0 ORDER BY RAND() LIMIT 1);';
    $sql .= 'UPDATE channels SET Used = 1 WHERE ID = @uid;';
    $sql .= 'SELECT * FROM channels WHERE ID IN = @uid;';
    if (mysqli_multi_query($conn, $sql)) {
       do {
           $result = mysqli_store_result($conn);
       } while(mysqli_next_result($conn));
       if (mysqli_num_rows($result) > 0) {
         $text = '';
         while($row = mysqli_fetch_assoc($result)) {  
           $Channel_Location = $row['Channel_Location'];
           $text =  $text . $Channel_Location;
         }       
       }
    } else {
      die( mysqli_error($conn) );
    }
    



    1. SQL ServerでのOBJECTPROPERTYEX()のしくみ

    2. C#を使用してXMLファイルをMySQLにロードする最速の方法は何ですか?

    3. SQLServerパフォーマンスモニタリングに関する上位10のFAQ

    4. MicrosoftTreeViewControlチュートリアル