2016-08-12 9 views
0
<table class="table table-bordered table-hover table-responsive bgwhite clgray"> 
      <thead> 
      <tr> 
       <th class="text-center text-capitalize" width="20"> 
       No 
       </th> 
       <th class="text-center text-capitalize"> 
       idbarang 
       </th> 
       <th class="text-center text-capitalize"> 
       Kategori 
       </th> 
       <th class="text-center text-capitalize"> 
       Merk 
       </th> 
       <th class="text-center text-capitalize"> 
       Foto 
       </th> 
       <th class="text-center text-capitalize"> 
       Stok 
       </th> 
      </tr> 
      </thead> 
      <?php 
      $queryStok = "SELECT SUM(stok) AS jumlahbarang FROM tabelstok WHERE idjenisusaha=1 GROUP BY idbarang"; 
      $resultStok = mysqli_query($link,$queryStok); 
      $queryStok2 = "SELECT * FROM tabelbarang,tabelmerk WHERE tabelbarang.idmerk=tabelmerk.idmerk"; 
      $resultStok2= mysqli_query($link,$queryStok2); 
      while ($datastok=mysqli_fetch_assoc($resultStok,$resultStok2)) { 
      ?> 
      <tbody> 
      <tr> 
       <td class="text-center text-capitalize"> 
       <?php echo $datastok['merk'] ?> 
       </td> 
       <td class="text-center text-capitalize"> 
       No 
       </td> 
       <td class="text-center text-capitalize"> 
       No 
       </td> 
       <td class="text-center text-capitalize"> 
       No 
       </td> 
       <td class="text-center text-capitalize"> 
       No 
       </td> 
       <td class="text-center text-capitalize"> 
       <?php echo $datastok['jumlahbarang'];?> 
       </td> 

      </tbody> 
      <?php } ?> 
     </table> 

2つのクエリを使用して2つのテーブルの結果をA SINGLEループで表示する方法を教えてください。PHPでmysqlクエリの結果を表示する5

+1

あなたのコードは、あなたの質問に追加する必要があります。 – Dave

+0

2つのクエリを結合する必要があり、別々にクエリを結合する必要はありません。テーブルを関連付ける列はありますか? – Barmar

答えて

1
  1. あなたは2つのwhileループを足すことなく、2つのクエリの結果を表示したい場合は、一度に複数のクエリを実行するためにmysqli_multi_query()機能を使用する必要があります。各ステートメントには最後にセミコロンを付ける必要があります(最後のステートメントにはセミコロンを含めないでください)。必要な数のクエリを追加できます。あなたが接続しているコラム/仲間両方のテーブルがある場合、その後、一つにクエリをマージしたい場合は、クエリを作成するとき

    $query = "YOUR FIRST STATEMENT;"; 
    $query .= "YOUR SECOND STATEMENT"; 
    $result = mysqli_multi_query($link, $query); 
    do { 
        $result = mysqli_store_result($link); 
        while ($row = mysqli_fetch_row($result)) { 
         // DO YOUR STUFF HERE WITH $row 
        } 
        mysqli_free_result($result); 
    } while (mysqli_next_result($link)); 
    
  2. 、あなたはJOINを使用する必要があります。例:これは、共通の値によって連結customersテーブルからの要素とdetailsテーブルの要素(顧客ID)をマージ

    SELECT customers.id, customers.name FROM customers 
    INNER JOIN details ON customers.id=details.user_id; 
    

データベースの構造とテーブルを表示していないので、私はあなたのコードに基づいた例を表示することはできません。

+0

彼は2つのクエリの結果を混在させたいと思うようです。マルチクエリはそれらを結合せずに順次実行します。 – Barmar

+0

@Barmarは真実のようです。はい、マルチクエリはそれらを順番に実行します。私はこの質問をよく理解していませんが、私は自分の答えを編集し、 'JOIN'について少し追加しました。 –

関連する問題