Php 如何在循环内部循环?
我有两张桌子Php 如何在循环内部循环?,php,mysql,Php,Mysql,我有两张桌子 Table1 "Order" orderid - customer_id 1001 - 1234 Table2 "Items" no - orderid - items_code 1 - 1001 - 100 2 - 1001 - 200 3 - 1001 - 300 如何获得以下结果(在php中): 这是我以前的编码: <? include("cat-config.php"); $resultdata=mysql_query(" (SELECT
Table1 "Order"
orderid - customer_id
1001 - 1234
Table2 "Items"
no - orderid - items_code
1 - 1001 - 100
2 - 1001 - 200
3 - 1001 - 300
如何获得以下结果(在php中):
这是我以前的编码:
<?
include("cat-config.php");
$resultdata=mysql_query("
(SELECT * FROM Order LIMIT 10)
");
echo "<table width=\"100%\" border=\"0\">
<tr>
<td>Order #</td>
<td>Items</td>
<td>Customer ID</td>
</tr>";
while($row=mysql_fetch_assoc($resultdata)){
echo "
<tr>
<td>$row[OrderID]</td>
<td>
**(I want loops items data on table "items": 100, 200,300 here)
</td>
<td>$row[CustomerID</td>
</tr>
";
}
mysql_close();
?>
最简单的方法是将其作为两个独立的查询运行:
SELECT * FROM Order
在循环浏览结果时:
X = OrderID
SELECT * FROM Items WHERE OrderId = X
$orders=array(100110003);
对于($i=0;$i
格式化为所需的输出,并进行调整以正确获取数据
根据更改的问题进行更新:
这可能是一种方法:
<?php
include 'cat-config.php';
$resultdata = mysql_query( 'SELECT * FROM Order LIMIT 10' );
echo "<table width=\"100%\" border=\"0\">
<tr>
<td>Order #</td>
<td>Items</td>
<td>Customer ID</td>
</tr>";
while ( $orderRow = mysql_fetch_assoc( $resultData ) )
{
echo " <tr>\n <td>" . $orderRow['orderid'] . "</td>\n";
echo " <td>";
$itemData = mysql_query( 'SELECT * FROM Items WHERE orderid = ' . $orderRow['orderid'] );
while ( $itemRow = mysql_fetch_assoc( $itemData ) )
{
echo $itemRow['items_code'] . ', ';
}
echo "</td>\n <td>" . $orderRow['customer_id'] . "</td>\n </tr>\n";
}
您能为我以前的编码实现您的解决方案吗,请参见上面我的previos编码。如果我有更多的数据,请参见上面我以前的编码。谢谢为什么会有人投反对票?除非我缺席,否则我会投票something@Ziplin:否决票可能是指问题的初始状态。如果有人否决我的问题,也许是我对问题的解释。因为我的英语不好,而且我对软件还不熟悉。但是谢谢你,你是我的英雄,,,,@ziplin:谢谢你,所以我可以继续学习编码。和所有的大师在一起。谢谢:)
$orders = array( 1001, 1002, 1003 );
for ( $i = 0; $i < count( $orders ); $i++ )
{
$items = getItemsForOrderId( $orders[$i] ); // SQL query or something
for ( $j = 0; $j < count( $items ); $j++ )
{
echo 'Order #' . $orders[$i] . ', Item ' . $items[$j];
}
}
<?php
include 'cat-config.php';
$resultdata = mysql_query( 'SELECT * FROM Order LIMIT 10' );
echo "<table width=\"100%\" border=\"0\">
<tr>
<td>Order #</td>
<td>Items</td>
<td>Customer ID</td>
</tr>";
while ( $orderRow = mysql_fetch_assoc( $resultData ) )
{
echo " <tr>\n <td>" . $orderRow['orderid'] . "</td>\n";
echo " <td>";
$itemData = mysql_query( 'SELECT * FROM Items WHERE orderid = ' . $orderRow['orderid'] );
while ( $itemRow = mysql_fetch_assoc( $itemData ) )
{
echo $itemRow['items_code'] . ', ';
}
echo "</td>\n <td>" . $orderRow['customer_id'] . "</td>\n </tr>\n";
}