2017-05-25 70 views
0

您好我有兩個表同時顯示數據 Table:product_descproduct_idproduct_name 我從讀表是user_table,我從那裏不從另一個SQL表

碼讀取product_id,我顯示的數據考慮讓價值:

$db = $registry->get('db'); 

$query = "SELECT * FROM " . DB_PREFIX . "user_table"; 
$data = $db->query($query); 
//update 
if ($data->num_rows) { ?> 
<div class=""> 
    <table class="table table-hover"> 
     <thead> 
      <tr> 
       <th>SNo.</th> 
       <th>User Name</th> 
       <th>Product ID</th> 
      </tr> 
     </thead> 
     <tbody> 
     <?php $count = 1; ?> 
     <?php foreach($data->rows as $k => $v){ ?> 
      <tr> 
       <td><?php echo $count++ ?></td> 
       <td><?php echo $v['username']; ?></td> 
       <td><?php echo $v['product_id']; ?></td> 
      </tr> 
     <?php } ?> 
     </tbody> 
    </table> 
    </div> 

我想實現的東西,我可以匹配表USER_TABLE 查詢等的product_id顯示從表product_desc PRODUCT_NAME:從product_descSELECT PRODUCT_NAME其中product_id = " .$product_id";

回答

0

可以使用SQL參加這樣的:

$db = $registry->get('db'); 

$query = "SELECT * FROM " . DB_PREFIX . "user_table LEFT OUTER JOIN " . DB_PREFIX . "product_desc ON " . DB_PREFIX . "user_table.product_id = " . DB_PREFIX . "product_desc.product_id" ; 
$data = $db->query($query); 
//update 
if ($data->num_rows) { ?> 
<div class=""> 
    <table class="table table-hover"> 
     <thead> 
      <tr> 
       <th>SNo.</th> 
       <th>User Name</th> 
       <th>Product ID</th> 
       <th>Product Name 
      </tr> 
     </thead> 
     <tbody> 
     <?php $count = 1; ?> 
     <?php foreach($data->rows as $k => $v){ ?> 
      <tr> 
       <td><?php echo $count++ ?></td> 
       <td><?php echo $v['username']; ?></td> 
       <td><?php echo $v['product_id']; ?></td> 
       <td><?php echo $v['product_name']; ?></td> 
      </tr> 
     <?php } ?> 
     </tbody> 
    </table> 
    </div> 
+0

這是行不通的你在哪裏存儲爲$ PRODUCT_NAME – raulxbox

+0

你說得對,我更新了我的答案值。請再試一次。 @raulxbox –

+0

在這裏你將兩個的product_id但我想這裏給分配到的product_id – raulxbox

0

如果我理解正確你,你有兩個表: USER_TABLE - 商店的用戶名和PRODUCT_ID? product_desc存儲product_id和product_name?

如果是這樣的話,然後你可以加入兩個表來產生一個結果與所有你想獲取信息設置,這些方針的東西應該工作:

"SELECT username, product_name FROM user_table OUTER JOIN product_desc WHERE user_table.product_id = product_desc.product_id"; 

當然從您在上面提供的代碼片段將希望將更多的列名添加到選擇中以獲取您希望顯示的所有數據。

嘗試看https://dev.mysql.com/doc/refman/5.7/en/join.html,以瞭解更多有關連接表

+0

我怎麼使用從product_desc和使用PRODUCT_NAME – raulxbox

+0

@raulbox不知道你的意思是由我怕的價值? – danMontague