使用单个PHP结果集填充2列HTML表

使用单个PHP结果集填充2列HTML表,php,html,mysql,wordpress,Php,Html,Mysql,Wordpress,请原谅我,因为我是PHP初学者 我试图用库存信息填充2个两列表。使用我当前的代码,我有下图: 我想在这张桌子上有两家紧挨着的商店。i、 e将编号2和编号7存储在表中的表行上,然后将编号10和11存储在同一行上,依此类推。以下是我目前正在使用的代码,以实现这一点: global $wpdb; $result = $wpdb->get_results( $wpdb->prepare( " SELECT STORE_NAME,REPLACE(STORE_NAM

请原谅我,因为我是PHP初学者

我试图用库存信息填充2个两列表。使用我当前的代码,我有下图:

我想在这张桌子上有两家紧挨着的商店。i、 e将编号2和编号7存储在表中的表行上,然后将编号10和11存储在同一行上,依此类推。以下是我目前正在使用的代码,以实现这一点:

global $wpdb;

$result = $wpdb->get_results( 
    $wpdb->prepare( "
        SELECT STORE_NAME,REPLACE(STORE_NAME, ' ', '-') as STOREURL, INVENTORY, STORE_NUMBER FROM StoreInventory 
        WHERE SKU = %s", 
        $product_sku 
    ) 
);

if ($result){
    echo '<table class=\'inventory\'>';
    foreach($result as $row) {
        echo '<tr><td><div><a href=\'https://mystore.com/stores/'. $row->STOREURL . '\' target=\'_parent\'>Store Number: ' . $row->STORE_NUMBER . '</a><br/>' .$row->INVENTORY. ' on hand. </div></td></tr>';
    }
    echo '</table>';
} else {
    echo '<table class=\'nostock\'><td>This item is out of stock, check back later for updated information!</td></table>';
}
global$wpdb;
$result=$wpdb->get_results(
$wpdb->prepare(“
从StoreInventory中选择STORE_NAME,REPLACE(STORE_NAME,,'-')作为STOREURL、INVENTORY、STORE_编号
其中SKU=%s“,
$product\U sku
) 
);
如果($结果){
回声';
foreach($结果为$行){
回显“
”。$row->库存。“在手”; } 回声'; }否则{ echo“此商品缺货,请稍后再查看更新信息!”; }
我遇到的问题是,我正在逐行遍历记录集,并将数据添加到每一行。我试图在一个循环中有一个循环,但这不会给我正确的结果

是否可以将结果集拆分为两个多维数组,分别循环每个数组,然后将它们添加到表中?我可以在循环中调用带有计数器的特定行吗


任何建议或指导都会大有帮助。

相对简单的方法是创建一个虚拟变量来存储列。例:

$column_number = 0;
echo '<table class=\'inventory\'><tr>';
foreach($result as $row) {
    echo '<td><div><a href=\'https://mystore.com/stores/'. $row->STOREURL . '\' target=\'_parent\'>Store Number: ' . $row->STORE_NUMBER . '</a><br/>' .$row->INVENTORY. ' on hand. </div></td>';
    $column_number += 1;
    if ($column_number == 2) {
        echo '</tr><tr>';
        $column_number = 0;
    }
}
echo '</tr></table>';
$column\u number=0;
回声';
foreach($结果为$行){
回显“
”。$row->库存。“在手”; $column_number+=1; 如果($column_number==2){ 回声'; $column_number=0; } } 回声';
根据阿鲁比克斯库布的答案得出的最终答案:

if ($result){
    $column_number = 0;
    echo '<table class=\'inventory\'><tr>';
    foreach($result as $row) {
        echo '<td \' width=\'50%\' ><div><a href=\'https://shopliquornl.com/stores/'. $row->STOREURL . '\' target=\'_parent\'>' . $row->STORE_NAME . '</a><br/>' .$row->INVENTORY. ' on hand</div></td>';
        $column_number += 1;
        if ($column_number == 2) {
            echo '</tr><tr>';
            $column_number = 0;
        }
    }
    echo '</table>';
} else {
    echo '<table class=\'nostock\'><td>This item is out of stock, check back later for updated information!</td></table>';
}
if($result){
$column_number=0;
回声';
foreach($结果为$行){
echo“库存”在手;
$column_number+=1;
如果($column_number==2){
回声';
$column_number=0;
}
}
回声';
}否则{
echo“此商品缺货,请稍后再查看更新信息!”;
}

我本打算建议使用模数,但这与此相同,它只是将数字重置为0。太棒了,谢谢。必须将我的td width设置为50%,以使两列的宽度始终保持相同,但这非常有效。谢谢