Необходимо сверстать плейофф-таблицу. Но не просто сверстать, а динамически, т.е. учитывая кол-во команд. Таблица такого вида. http://xmages.net/out.php/i88881_table.png Понимаю, что надо делать циклами, понимаю, что надо делать какие-то счетчики. Можете подсказать, каким образом рисуются подобные таблицы? Какие счетчики берутся?
это не пхп, а верстка больше для начала напишите хтмл-код для пары-тройки вариантов страницы с таблицами, выделите повторяющиеся куски, которые можно загнать в циклический вывод оттуда будет видно, что именно писать в пхп
Выводить таблицу надо ведь из данных об играх, нет ? Нужно структурировать данные как-нибудь, если это еще не сделано. Например (корень дерева) так: PHP: $table = array( 'team-5' => array('team-1', 'team-5') ); И так далее со вложенными массивами.
вobsrv данные можно будет структурировать как угодно, ограничений не будет. для меня вся проблема именно в динамич. верстке такой таблицы, даже пустой
Почему своей головой нельзя поработать ? Например простой вариант: PHP: <?php $a = array('team-5' => array( 'Team-5' => array( 'Team-5' => array( 'Team-5' => NULL, 'Team-6' => NULL), 'Team-7' => array( 'Team-7' => NULL, 'Team-8' => NULL ) ), 'Team-1' => array( 'Team-1' => array( 'Team-1' => NULL, 'Team-2' => NULL), 'Team-3' => array( 'Team-3' => NULL, 'Team-4' => NULL) )) ); echo "<table border=0><tr>" . printWave($a) . "</tr></table>\n"; function printWave($a) { static $width = 240; // table height $s = ""; $na = array(); foreach($a as $k=>$v) { if (is_array($v)) $na = array_merge($na, $v); $s .= "<table border=\"0\" height=\"" . $width . "\"><tr><td><span style=\"margin: 2px; padding: 2px; border: solid 1px navy; background-color: #eee;\">" . $k . "</span></td></tr></table>\n"; } $width = floor($width / 2); return ((count($na))?printWave($na):"") . "<td style=\"border-right: solid 1px navy;\">" . $s . "</td>"; } ?>
можете объяснить структуру данных? Как упорядочивать команды? Вах, вы сделали, помещая таблицу в таблицу, я пытался через rowspan. Спасибо ЗЫ думать, то думал, и делал, но версталось все очень криво. и юзалась инфа из SQL.
bFree 1. обычное дерево построенное на массивах ( Ваши слова "данные можно будет структурировать как угодно, ограничений не будет" ). 2. Какой смысл их упорядочивать в турнирной таблице ? Если так надо, то все равно изучать алгоритмы работы с "деревьями". Через rowspan более красиво, но более алгоритмично. Думаю без коллекции классов тяжеловато будет. Потеряв на большом количестве символов (тагов) выиграли по времени разработки.
Под словом упорядочивать, я имел ввиду как раз это самое дерево. Я не понимаю, как оно устроено. Таблица в таблице полностью устраивает.