表中的列未填充

时间:2013-10-07 00:11:52

标签: php html-table

这让我发疯了。该表正确呈现,因为列标题都是正确的,第一列是正确的,但是第二列被跳过,应该存在的数据在第3列,第3列在第3列等。当我看到页面源一切看起来都正确。但是,当我在Chrome的开发者工具中查看“元素”时,会有额外的内容。这是代码:

echo '<table id="bordered">';
                echo '<thead>';
                    echo '<tr>';
                        echo '<th></th>';
                        foreach($products as $product){
                            /*@var $product Products */
                            echo '<th>',$product->getProductName(),'</th>';
                        }
                    echo '</tr>';
                echo '</thead>';
                echo '<tbody>';
                    foreach($customers as $cust){
                        echo '<tr>';
                            echo '<td>',$cust->getCustomerName(),'<td>';
                            $prod = ForecastDisplay_db::getProductsQuantityForCustomer($cust, $products);
                            $i=0;
                            foreach($prod as $quantity){
                                $i++;
                                if($i == 1){
                                    echo '<td>First Run</td>';
                                }else{
                                    echo '<td>', $quantity['id'],'  ',$quantity['quantity'],'</td>';
                                }
                            }
                        echo '</tr>';
                    }
                echo '</tbody>';
            echo '</table>';

我添加了'First Run'来确保数组的第一个位置没有空,但没有。任何人都知道为什么要跳过该列?

1 个答案:

答案 0 :(得分:3)

您没有正确关闭td代码。

echo '<td>',$cust->getCustomerName(),'<td>';

应该是

echo '<td>',$cust->getCustomerName(),'</td>';