首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用MySQL查询中的行创建超文本标记语言表格布局?

如何使用MySQL查询中的行创建超文本标记语言表格布局?
EN

Stack Overflow用户
提问于 2012-06-16 02:15:29
回答 2查看 909关注 0票数 1

在我的“流行标签”页面上,我使用PHP & SQL从数据库中提取所有标签,从最流行到最不流行:

代码语言:javascript
复制
$sql = "SELECT t.tagid, t.name, t.desc, COUNT(qt.id) AS total
        FROM tags t
        LEFT JOIN question_tags qt ON t.tagid=qt.tag_id
        GROUP BY t.tagid, t.name
        ORDER BY total DESC";

$result = mysql_query($sql) or die(mysql_error());

while($row=mysql_fetch_assoc($result)) {
  echo '<div class="tag-list-box" id="tag-'.$row['tagid'].'">
        <a href="/tags/'.strtolower($row['name']).'" class="tag">
        <span class="label label-inverse label-tag">'.strtolower($row['name']).'</span>
        </a> <strong>&times; '.$row['total'].'</strong><br />
        <p>'.($row['desc']!==null ? $row['desc'] : '<em>This tag has no description.</em>').'</p>
        </div>';
}

我现在没有在HTML表中使用它,因为我认为我可以用div和CSS以更“现代的方式”完成它,但正如您在下面的屏幕截图中看到的那样,当一个标记有一个描述时,行就会变得混乱,因为框的高度比其他的要大:

我对盒子的CSS是:

代码语言:javascript
复制
.tag-list-box {
  width: 20%;
  padding: 5px;
  background-color: #f0f0f0;
  border: 1px solid #ccc;
  float: left;
  margin-right: 2%;
  margin-bottom: 10px;
}

我想我应该把它放在一个表中,这样可以解决这个问题,但我的问题是,如何让查询中的每4行都有自己的 <tr> ,这样每个表行中就可以有4行?

我弄不明白--我试着在while循环中做一个计数并递增,但我就是不知道从哪里开始。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11056100

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档