【发布时间】:2015-04-22 22:21:51
【问题描述】:
我正在从 MySQL 数据库中提取内容,我想在 3 列中显示这些内容。我已经设法实现了它,但并不是所有的内容都被提取了。即使我将其更改为 4 列,它也会显示更多内容,但仍不是全部。
必须有一种方法来检查它有多少内容并正确显示它。任何帮助将不胜感激。
这是我目前所拥有的: (我应该显示数据库中的 52 个项目,但只显示了 38 个左右)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<div id="wrapper">
<div id="page">
<div id="content">
<div id="report_content">
<div id="top_bar">
<h1 class="report_title"></h1>
<h2 class="report_subtitle"></h2>
<div id="criteria"></div>
</div>
<div>
<div>
<div id="t1" class="results resultList">
<?php if ($row_detail_vendors) { $temp_name='' ; ?>
<table>
<?php $cols=4 ; do { ?>
<tr>
<?php for($i=1;$i<=$cols;$i++){ // All the rows will have $cols columns even if // the records are less than $cols $row_detail_vendors=m ysql_fetch_assoc($detail_vendors) ?>
<td> <a href="partner_info.php?idu=<?php echo $row_detail_vendors['shortcut']; ?>">
<?php echo ucfirst(strtoupper($row_detail_vendors['hotel_name'])); ?></a>
<br> <span><?php echo $row_detail_vendors['city']; ?>, <?php echo ucfirst($row_detail_vendors['country']); ?></span>
<br/>
<br/>
</a>
</td>
<?php } ?>
</tr>
</div>
<!--marketing-->
<?php } while ($row_detail_vendors=m ysql_fetch_assoc($detail_vendors)); ?>
<?php }?>
</div>
</div>
</div>
<!--marketing partners-->
</div>
<!--content-->
</div>
<!--page-->
</body>
【问题讨论】:
-
不确定为什么要执行 Do/While 循环。建议只使用 While 循环。
mysql_*函数也被弃用了。应该切换到 MySQLI 或 PDO。 -
var_export 结果将向您显示查询返回调试 101 的确切内容。
-
在没有匹配的
<a>的两个<br/>之后有一个额外的</a>。
标签: php mysql echo multiple-columns