[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод информации в несколько колонок
ос01
Добрый день! Попробовал сделать как в этой теме, но все равно данные выводятся в один столбик. Подскажите пож ошибку. Спасибо!
<?php


$user =& JFactory::getUser();
$db =& JFactory::getDBO();

$sql = 'SELECT b.title, c.url_link
FROM #__jcomments AS a
LEFT JOIN #__content AS b ON a.object_id = b.id
LEFT JOIN #__relatedselects_urls AS c ON b.title = c.url_name
WHERE b.catid IN (21,22,24,25)

AND a.userid = '
. (int) $user->id;
$db->setQuery($sql);
$results = $db->loadObjectList();
$i=0;

if($i%$cols==0)echo '<tr>'; {
echo '<table cols="3" class="jclist'.$params->get( 'moduleclass_sfx' ).'">';
foreach ($results as $result) {
echo '<td><a href='.$result->url_link.'>' .$result->title.'</a></td>';
$i++;
echo '</tr>';

if($i%$cols==0)echo '</tr>';

}
if($i%$cols!=0)echo '<tr>';
{
while($i%$cols!=0) echo '<td><a href='.$result->url_link.'>' .$result->title.'</a></td>';
echo '</tr>';
}
// Помещаем в переменную $table закрывающий тег </table>
echo '</table>';

}

?>




Спустя 13 минут, 20 секунд (27.08.2011 - 19:15) inpost написал(а):
if(++$i%3==0)
echo '</tr><tr>';

После каждой третей записи будет выводиться </tr><tr>, тебе достаточно выводить лишь <td> , ну, собственно, и в начале и в конце открыть и закрыть теги, чтобы получилась адекватная таблица.

Спустя 19 минут, 57 секунд (27.08.2011 - 19:35) Guest написал(а):
Если так, то получается в одну строчку, но с пробелом между ними.
<?php


$user =& JFactory::getUser();
$db =& JFactory::getDBO();

$sql = 'SELECT b.title, c.url_link
FROM #__jcomments AS a
LEFT JOIN #__content AS b ON a.object_id = b.id
LEFT JOIN #__relatedselects_urls AS c ON b.title = c.url_name
WHERE b.catid IN (21,22,24,25)

AND a.userid = '
. (int) $user->id;
$db->setQuery($sql);
$results = $db->loadObjectList();
$i=0;

if(++$i%3==0)
echo '<tr>'; {
echo '<table cols="3" class="jclist'.$params->get( 'moduleclass_sfx' ).'">';
foreach ($results as $result) {
echo '<td><a href='.$result->url_link.'>' .$result->title.'</a>';
$i++;


}
if(++$i%3==0)
echo '</tr><tr>';
{
while($i%$cols!=0) echo '<a href='.$result->url_link.'>' .$result->title.'</a></td>';
echo '</tr>';
}
echo '</table>';

}

?>

Спустя 1 час, 54 минуты, 8 секунд (27.08.2011 - 21:29) Guest написал(а):
Вот так работает, только первая колонка на одну строку выше, чем остальные
<?php


$user =& JFactory::getUser();
$db =& JFactory::getDBO();

$sql = 'SELECT b.title, c.url_link
FROM #__jcomments AS a
LEFT JOIN #__content AS b ON a.object_id = b.id
LEFT JOIN #__relatedselects_urls AS c ON b.title = c.url_name
WHERE b.catid IN (21,22,24,25)

AND a.userid = '
. (int) $user->id;
$db->setQuery($sql);
$results = $db->loadObjectList();



echo '<table width="100%">';

foreach ($results as $result) {
if(++$i%3==0)
echo '<tr>'; {
echo '<td width="50%"><a href='.$result->url_link.'>' .$result->title.'</a>';



}
echo '<table width="100%">';
if(++$i%3==0)
echo '</tr><tr>';
{
while($i%$cols!=0) echo '<td><a href='.$result->url_link.'>' .$result->title.'</a></td>';
echo '</tr>';
}
echo '</table>';
}

?>

Спустя 2 часа, 7 минут, 51 секунда (27.08.2011 - 23:37) inpost написал(а):
Guest
Что в твоём понимании "на одну строку выше" - я не понимаю.

Спустя 5 минут, 6 секунд (27.08.2011 - 23:42) neadekvat написал(а):
$user =& JFactory::getUser();

Какую версию php используешь? Если пятую, пиши так:
$user = JFactory::getUser();

Спустя 10 минут, 59 секунд (27.08.2011 - 23:53) Guest написал(а):
neadekvat не помогает

inpost первая строка первой колонки выше, чем первая строка 2 и 3 колонок

Спустя 4 минуты, 13 секунд (27.08.2011 - 23:57) neadekvat написал(а):
Конечно, а как оно может помочь? о.О Я так, для общего развития.

Спустя 1 час, 2 минуты, 16 секунд (28.08.2011 - 00:59) inpost написал(а):
покажи скрин-шот.

Спустя 8 часов, 28 минут, 50 секунд (28.08.2011 - 09:28) Guest написал(а):
Цитата (inpost @ 27.08.2011 - 21:59)
покажи скрин-шот.

user posted image

Спустя 2 часа, 9 минут, 35 секунд (28.08.2011 - 11:38) Guest написал(а):
И еще вопросик. Как выведенный материал заключить во фрейм?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.