2013-10-07 3 views
0

Это сводит меня с ума. Таблица правильно отображает, что заголовки столбцов правильны, а первый столбец правильный, но затем пропускается второй столбец, а данные, которые должны быть там, находятся в третьем столбце, а третий в четвертом столбце и т. Д. Когда я смотрю на источник страницы выглядит правильно. Но когда я смотрю на «элементы» в инструментах разработчика 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>'; 

Я добавил, что «Первый запуск», чтобы убедиться, что не был нулевым в первых позициях массива, но это не так. У кого-нибудь есть идея, почему эта колонка пропускается?

+1

Пытались вы 'var_dump ($ прод)'? – TheWolf

ответ

3

Вы не закрыли тег td правильно.

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

должен быть

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

Святой глупый. Я смотрел на эту вещь больше часа и полностью пропустил ее. Благодаря! – Casey

Смежные вопросы