У меня проблема с работой таблицы. Я хочу настроить форму для печати для списка заказов (opencart), но я хочу, чтобы ящик адреса слева и продукты, заказанные справа. Проблема в том, что количество продуктов варьируется в зависимости от заказа, поэтому использование rowspan в поле адреса не работает (я оставил строки в коде).
<thead>
<tr>
<td><b><?php echo $text_to; ?></b></td>
<td><b><?php echo $column_product; ?></b></td>
<td class="text-center"><b><?php echo $column_quantity; ?></b></td>
</tr>
</thead>
<tbody><tr>
<td rowspan="10"><?php echo $order['shipping_address']; ?><br/><br/>
<?php echo $order['telephone']; ?>
<br />
<?php if ($order['shipping_method']) { ?>
<b><?php echo $text_shipping_method; ?></b> <?php echo $order['shipping_method']; ?><br />
<?php } ?></td></tr>
<?php foreach ($order['product'] as $product) { ?>
<td><?php echo $product['name']; ?>
<?php foreach ($product['option'] as $option) { ?>
<br />
<small> - <?php echo $option['name']; ?>: <?php echo $option['value']; ?></small>
<?php } ?></td>
<td class="text-center"><?php echo $product['quantity']; ?></td>
</tr>
<?php } ?>
</tbody>
</table>
У вас есть вся доступная информация, поэтому вам просто нужно изменить:
<td rowspan="10">
чтобы:
<td rowspan="<?php echo count($order['product']); ?>">
Тем не менее, вам нужно проверить сгенерированный html, поскольку он выглядит так, будто вы не создаете допустимые строки, поэтому вам может понадобиться немного изменить логику.