Вывод данных в двух колонках

Russianmaniac

Новичок
дравствуйте! Помогите пожалуйста вывести следующим образом данные для каталога, заполняя строки в 2 колонки слева на право и так, чтобы с базы данных заполнялось:


или



и где можн о найти пример такого вывода ?
 

baev

‹°°¬•
Команда форума
Что конкретно у Вас не получается?
На HTML Вы это можете вывести?
 

Russianmaniac

Новичок
Не знаю каким образом вывести данные из Базы данных в 2 столба, чтобы данные в таблицу заполнялись в 1 строке слева на право, затем заполнялось 2 строка слева на право, затем 3 строка слева на право.


<table >
<tr>
<td>1 ссылка</td>
<td>2 ссылка</td>
</tr>
<tr>
<td>3 ссылка</td>
<td>4 ссылка</td>
</tr>
<tr>
<td>5 ссылка</td>
<td>6 ссылка</td>
</tr>
</table>
 

Russianmaniac

Новичок
PHP:
$delitel = 2;
        
 $result = mysql_query ("SELECT * FROM articles");
 
 $rows = mysql_num_rows($result);
 
 for ( $i = 0; $i <= $rows; $i++ )
 {
     $row = mysql_fetch_assoc($result);
 
     if ($i%$delitel == 0)
     {
         echo "Право: " . $row['title'];
     }
     else
     {
         echo "Лево: " . $row['title'];
     }
 }
примерно так ? а как его внедрить в этот код в -
PHP:
$myrow = mysql_fetch_array($result);
 do
 {
 printf ("
     <p class='news_title'><a href='view_post.php?id=%s'>%s</a></p>
 <p class='text_news'> %s </p>
  <p class='date_news'>Дата добавления: %s</p>
 
 ",$myrow["id"],$myrow["title"],$myrow["description"],$myrow["date"]);
 }
 while ($myrow = mysql_fetch_array($result));
 

Russianmaniac

Новичок
Может там просто DIV , [1] [2] а третья не помещается и уходит вниз..а вывод из базы обычный ?
 

Russianmaniac

Новичок
НА 2 столба делится, но постраничная навигация при этом косячит. Например расчитывается 3 страницы , по логике должно выйти по 2 статьи на двух страницах и 1 статься на послденей странице, а выходят по 5 страниц одинаковых на трех страницах .

Код:
 $num2 = 20;
$cols2 = 2;
$i = 0;

echo "<table><tr>";

$result2 = mysql_query("SELECT * FROM articles  WHERE cat='$cat' LIMIT 0 , $num2",$db);
$n = mysql_num_rows($result2); 
$m = $cols2 * ceil($n / $cols2);
while($i < $m)
 {
 $i++;
 $row = mysql_fetch_assoc($result2);
 if ($i <= $n)
     echo "<td><p class='news_title'><a href=view_post.php?id=$row[id]>$row[title]  </a><br> $row[description]</p></td> ";
 
 else
     echo "<td> </td>";

 if ($i < $m and $i % $cols2 == 0)
     echo "</tr><tr>";
 }
echo "</tr></table>";

 $result77 = mysql_query("SELECT str FROM options", $db);   //узнаем количество постов
$myrow77 = mysql_fetch_array($result77);
$num = $myrow77["str"];
// Извлекаем из URL текущую страницу
@$page = $_GET['page'];
// Определяем общее число сообщений в базе данных
$result00 = mysql_query("SELECT COUNT(*) FROM articles WHERE cat='$cat'");
$temp = mysql_fetch_array($result00);
$posts = $temp[0];
// Находим общее число страниц
$total = (($posts - 1) / $num) + 1;
$total =  intval($total);
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0) $page = 1;
 if($page > $total) $page = $total;
// Вычисляем начиная с какого номера
// следует выводить сообщения
$start = $page * $num - $num;
// Выбираем $num сообщений начиная с номера $start  
 
$result = mysql_query("SELECT id,title,description,date,author FROM articles WHERE cat='$cat' ORDER BY id LIMIT $start, $num",$db);
 
 if (!$result)
 {
 echo "Запрос на выборку данных из базы не прошел" 
;
  exit(mysql_error());
 }
if (mysql_num_rows($result) > 0)

{
$myrow = mysql_fetch_array($result);


// Проверяем нужны ли стрелки назад
if ($page != 1) $pervpage = '<a href=view_cat.php?cat='.$cat.'&page=1>Первая</a> | <a href=view_cat.php?cat='.$cat.'&page='. ($page - 1) .'>Предыдущая</a> | ';
// Проверяем нужны ли стрелки вперед
if ($page != $total) $nextpage = ' | <a href=view_cat.php?cat='.$cat.'&page='. ($page + 1) .'>Следующая</a> | <a href=view_cat.php?cat='.$cat.'&page=' .$total. '>Последняя</a>';

// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 5 > 0) $page5left = ' <a href=view_cat.php?cat='.$cat.'&page='. ($page - 5) .'>'. ($page - 5) .'</a> | ';
if($page - 4 > 0) $page4left = ' <a href=view_cat.php?cat='.$cat.'&page='. ($page - 4) .'>'. ($page - 4) .'</a> | ';
if($page - 3 > 0) $page3left = ' <a href=view_cat.php?cat='.$cat.'&page='. ($page - 3) .'>'. ($page - 3) .'</a> | ';
if($page - 2 > 0) $page2left = ' <a href=view_cat.php?cat='.$cat.'&page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = '<a href=view_cat.php?cat='.$cat.'&page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';

if($page + 5 <= $total) $page5right = ' | <a href=view_cat.php?cat='.$cat.'&page='. ($page + 5) .'>'. ($page + 5) .'</a>';
if($page + 4 <= $total) $page4right = ' | <a href=view_cat.php?cat='.$cat.'&page='. ($page + 4) .'>'. ($page + 4) .'</a>';
if($page + 3 <= $total) $page3right = ' | <a href=view_cat.php?cat='.$cat.'&page='. ($page + 3) .'>'. ($page + 3) .'</a>';
if($page + 2 <= $total) $page2right = ' | <a href=view_cat.php?cat='.$cat.'&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' | <a href=view_cat.php?cat='.$cat.'&page='. ($page + 1) .'>'. ($page + 1) .'</a>';

// Вывод меню если страниц больше одной

if ($total > 1)
{
Error_Reporting(E_ALL & ~E_NOTICE);
echo "<div class=\"pstrnav\">";
echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
echo "</div>";
}

}
else
{
 echo "информация не может быть извлечена";
 exit();
 }
 
Сверху