PHP Mysqli帮助从多个表中进行选择

时间:2017-01-10 04:31:07

标签: php mysql mysqli

所以..我有两个像这样的mysqli表:

第一个 表名:订单商品

enter image description here

第二个: 表名:卡

enter image description here

我想要做的是从'order_items'表中选择'product_id'和'quantity',其中'order_id'= 1

使用从第一个查询中提取的'product_id',从表'cards'中选择*,其中'prd_id'='product_id'和limit ='quantity'。是的,可能有多个product_ids。谁能为我写一个快速代码? php mysqli是首选。感谢

1 个答案:

答案 0 :(得分:-1)

<?php    
const DB_SERVER = "localhost";
const DB_USER = "user_name";
const DB_PASSWORD = "password";
const DB = "db_name";
$conn=mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD, DB); 
// $conn variable will hold the connection object 
// Get Product ids fro the order_items
$query="select product_id,quantity from order_items where order_id=1";
$result=mysqli_query($conn,$query);
$productIds=''; // Will be a string to append product ids
if(mysqli_num_rows($result) > 0)) 
{
   while ($row = mysqli_fetch_assoc($result)) {
      $productIds.=$row['product_id'].',';
   }
}
$productIds=rtrim($productIds,',');// Remove the last comma
// Once you get the product ids.
$query="select * from cards where prd_id in($productIds) limit 10";
// Limit should be exapmple - Limit 10 
$result=mysqli_query($conn,$query);
$data=array();
if(mysqli_num_rows($result) > 0)) 
{
   while ($row = mysqli_fetch_assoc($result)) {
      $data[]=$row;
   }
}
print_r($data);