За последние 24 часа нас посетили 17975 программистов и 1600 роботов. Сейчас ищут 927 программистов ...

Вывод данных массива MySQL в 4 столбика табл. шаблоне Smarty

Тема в разделе "PHP для новичков", создана пользователем sevalery, 11 ноя 2010.

  1. sevalery

    sevalery Активный пользователь

    С нами с:
    11 ноя 2010
    Сообщения:
    14
    Симпатии:
    0
    Помогите разместить вывод данных массива базы MySQL в 4(2) столбика таблицы в шаблоне SMARTY.
    А именно в файле ".tpl" есть кусок сокращенного кода:

    Код (Text):
    1.  
    2. {foreach from=$new item=i}
    3.  
    4. <table>
    5. <tr><td>{$i.id}</td><td>{$i.$i.images}</td></tr>
    6.  
    7. <tr><td>{$i.data}</td><td>{$i.price}</td></tr>
    8. <tr><td>{$i.nedv}</td><td>{$i.viewbar}</td></tr>
    9. <tr><td>{$i.seller}</td><td>{$i.mater}</td></tr>
    10. </table>
    11.  
    12. {/foreach}
    Необходимо разместить объекты по 4 (2) в одну строку. Спасибо.
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    я знаю как выводить в столбики используюя шаблонизатор PHP
    а используя шаблонизатор для шаблонизатора - я лично не знаю. но вроде у нас тут есть умельцы =)
     
  3. neverlose

    neverlose Активный пользователь

    С нами с:
    27 авг 2008
    Сообщения:
    1.112
    Симпатии:
    20
    Наскольк понимаю, сейчас каждый товар - отдельная таблица. Вопрос в том, что нужно отобразить по 4 таблицы в ряд.
    Переделайте вёртстку приерно так:

    HTML:
    1. <ul class="my-items">
    2. {foreach from=$new item=i}
    3. <li>
    4. <tr><td>{$i.id}</td><td>{$i.$i.images}</td></tr>
    5.  
    6. <tr><td>{$i.data}</td><td>{$i.price}</td></tr>
    7. <tr><td>{$i.nedv}</td><td>{$i.viewbar}</td></tr>
    8. <tr><td>{$i.seller}</td><td>{$i.mater}</td></tr>
    9. </table>
    10. </li>
    11. {/foreach}
    12. </ul>
    13. <div class="clear"></div>
    14.  
    и примените в css следующие стили

    [css].my-items { width: 840px; margin: 0; padding: 0; list-style: none; }
    .my-items li { width: 200px; float: left; display: inline; margin: 0 0 0 10px; padding:0; }
    .my-items li table { width: 200px; margin: 0; padding:0; border: 0; border-collapse: collapse; border-spacing: 0; }
    .clear { clear: both; }[/css]
     
  4. sevalery

    sevalery Активный пользователь

    С нами с:
    11 ноя 2010
    Сообщения:
    14
    Симпатии:
    0
    Спасибо. Сейчас попробую!
     
  5. sevalery

    sevalery Активный пользователь

    С нами с:
    11 ноя 2010
    Сообщения:
    14
    Симпатии:
    0
    СУПЕР!
    Большое спасибо neverlose!!!
    Разобрался. Все работает!