在两列中显示记录

时间:2014-08-08 08:15:04

标签: php html mysql

有人可以告诉我如何在两列中显示从mysql数据库生成的所有记录,因为我的数据库中的类别数量都显示在一列中,我希望它们显示在两列中,如{{0 }}

这是我的PHP代码;

的index.php

<?php 

$dbh=mysql_connect("localhost","root","root") or die ('Cannot connedt to the Database' .mysql_errno()); 
mysql_select_db("booksdb");


?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Select a Company</title>

</head>

<body>


<?php 

$res_query = mysql_query("SELECT A.cat_id as cat_id, count(A.cat_id) as cnt, B.category as category FROM books A, bookcatname B WHERE A.cat_id=B.cat_id GROUP BY A.cat_id");

while ($category = mysql_fetch_assoc($res_query) )
{
  echo '<a href="page.php?cat_id='.$category['cat_id'].'">'.$category['category'].' ('.$category['cnt'].')</a><br />';

}

?>
</body>
</html>

page.php文件

<?php 

$dbh=mysql_connect("localhost","root","root") or die ('Cannot connect to the Database' .mysql_errno()); 
mysql_select_db("booksdb");

if ( empty($_GET['cat_id']) )
{
  header('Location: index.php');
  exit();
}



$getCats = mysql_query("SELECT * FROM books WHERE cat_id = '".intval($_GET['cat_id'])."'");

echo '<ul>';

while ( $book = mysql_fetch_assoc($getCats) )
{
   echo '<li>'.$book['title'].'<br />'.$book['author'].'<br />'.'</li><br />';
}

echo '</ul>';
?>

1 个答案:

答案 0 :(得分:2)

如果不使用任何仅使用css的ul-li或表格,您可以执行以下操作:

div
{
column-count:2;
-moz-column-count:2; /* Firefox */
-webkit-column-count:2; /* Safari and Chrome */
} 

你会得到类似的东西:

<div>
a  b
c  d
e  f
</div>

编辑:看来这个css解决方案在IE中尚未运行 所以我所知道的最好的跨浏览器方法是使用ul-li(将li宽度设置为50%)