• Страница 1 из 1
  • 1
Модератор форума: likbezz  
Скрипты и коды для юкоз - Форум аццкого кодера » Раздел для начинающих » Как сделать так, чтобы... » Как вывести информацию в три столба с использованием PHP
Как вывести информацию в три столба с использованием PHP
Дата: Вторник, 26.06.2012, 01:37 |
polyks
Рядовой
Группа: Проверенные
Сообщений: 18
Награды: 0
Репутация: 0
Статус: Offline


Подскажите пожалуйста, как вывести информацию в три столба с использованием PHP?

<?php
$col = 1;
echo "<table>";
foreach($this->subcats as $key => $subcat) {
$subcat->link = JRoute::_('index.php?option=com_adsmanager&view=list&catid='.$subcat->id."&Itemid=".$this->Itemid);
if ($col==1) {
$col = 0;
echo "<tr><td>";
echo '<a href="'.$subcat->link.'">'.$subcat->name.'</a>';
echo "</td>";
} else {
$col = 1;
echo "<td>";
echo '<a href="'.$subcat->link.'">'.$subcat->name.'</a>';
echo "</td></tr>";
}
}
if ($col==0) {
echo "<td>-</td></tr>";
}
echo "</table>";
?>

Что поправить в этом коде? Сейчас у меня получается только 2 столбца.


 
Дата: Вторник, 26.06.2012, 13:09 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


polyks,
Подскажите пожалуйста, как вывести информацию в три столба с использованием PHP?

Как обычно, циклом.
Типа:
Code
<?php
$col = 1;
$i=0; /* Устанавливаем счетчик ячеек */
echo '<table>';
foreach($this->subcats as $key => $subcat) {
$subcat->link = JRoute::_('index.php?option=com_adsmanager&view=list&catid='.$subcat->id."&Itemid=".$this->Itemid);
if($i%3==0){ /* Проверяем */
echo '<tr>';
}
echo '<td><a href="'.$subcat->link.'">'.$subcat->name.'</a></td>'; /* Рисуем ячейку */
if(++$i%3==0){ /* Добавляем единичку и проверяем */
echo '</tr>';
}
}
echo '</table>';
?>

Где:
$i%3 = цельночисленный остаток от деления на 3 - количество ячеек.

Вот по такому принципу.


 
Дата: Вторник, 26.06.2012, 23:41 |
polyks
Рядовой
Группа: Проверенные
Сообщений: 18
Награды: 0
Репутация: 0
Статус: Offline


Поняла, спасибо.

 
Дата: Среда, 27.06.2012, 05:58 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


polyks,
Поняла, спасибо.

Поняла-то - это хорошо) Вопрос в другом, у вас все работает?
Если переменная $i уже занята, то бишь есть и обозначена в шаблоне/коде, можете её заменить на любую свою, уникальную в пределах шаблона. Например $my_var_for_table или $tr_count - какую придумаете, такая и будет).
Примерно так отрисовывается любая таблица, тут главное понять принцип, а он не сложен)

Проще, конечно через цикл for - там уже есть счетчик проходов, но раз у вас уже есть foreach то необходим дополнительная переменная, считать количество пройденных циклов.


 
Дата: Четверг, 12.07.2012, 12:20 |
polyks
Рядовой
Группа: Проверенные
Сообщений: 18
Награды: 0
Репутация: 0
Статус: Offline


Да, уже все работает biggrin

 
Дата: Четверг, 12.07.2012, 12:50 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


polyks,
Да, уже все работает

Очень хорошо, значит моя писанина не прошла даром)
Здорово)


 
Скрипты и коды для юкоз - Форум аццкого кодера » Раздел для начинающих » Как сделать так, чтобы... » Как вывести информацию в три столба с использованием PHP
  • Страница 1 из 1
  • 1
Поиск:


Мобильная версия