以下代码说明了行和列的显示方式......我使列垂直打印,但数据没有垂直显示。
$result = mysql_query("select * from feb2016.Chargeback_Tracker_2016_February where case_id='$id' and status='Completed'");
if (!$result) {
die("Query to show fields from table failed");
}
$fields_num = mysql_num_fields($result);
echo "<table class='gridtable'>";
for($i=0; $i<$fields_num; $i++)
{
echo
$field = mysql_fetch_field($result);
echo "<td>{$field->name}</td>";
}
echo "</tr>\n";
while($row = mysql_fetch_row($result))
{
echo "<tr>";
foreach($row as ``$cell)
echo "<td>$cell</td>";
echo "</tr>\n";
}
这就是那里 caseid用户日期状态........ 1234 abc 14-03-2016完成
我想要这样
caseid 1234 \ n 用户abc \ n 日期14-03-2016 \ n 状态已完成\ n
答案 0 :(得分:2)
我将针对此类问题提供一些常规故障排除提示。
第一个是浏览器中的View Source。 View Source,有时也称为View Page Source等,是您的朋友!如果网页无法正确呈现,请使用它来查看HTML代码。通常你可以马上发现问题。
第二个是知道HTML的文本编辑器。 Notepad ++就是这样一个编辑器,还有其他编辑器。他们中的许多人都是免费的(言论自由,免费小猫免费)。复制您查看的源并将其粘贴到该编辑器中,然后让编辑器整理HTML缩进。然后,如果您选择像</tr>
这样的结束标记,编辑器将突出显示开始标记。
第三个是你的PHP代码的风格建议。它也适用于其他网络应用语言,如PERL和C#。将您的代码编写为网页,而不是作为程序。这使您可以使用缩进来显示程序生成的HTML的结构。
例如,代码的前几行可能如下所示,其中每个结束标记在其开始标记下方以制表符对齐。
<? $fields_num = mysql_num_fields($result); ?>
<table class="gridtable">
<? for($i=0; $i<$fields_num; $i++) { ?>
<? $field = mysql_fetch_field($result); ?>
<td>
<? $field->name ?>
</td>
<? } ?>
</tr>
...
</table>
了解使用此技术时丢失的<tr>
如何变得更容易被发现?你想要的是这个:
<? $fields_num = mysql_num_fields($result); ?>
<table class="gridtable">
<tr>
<? for($i=0; $i<$fields_num; $i++) { ?>
<? $field = mysql_fetch_field($result); ?>
<td>
<? $field->name ?>
</td>
<? } ?>
</tr>
...
</table>
现在,您可能会抗议所有缩进都会在您的网页上留下额外的空间。这不是问题,部分原因是大多数Web服务器压缩(使用Deflate样式压缩)他们发送给浏览器的HTML。这也不是那么多数据。在此页面上查看源代码,您将发现Stack Overflow缩进其HTML。他们知道自己在做什么。你也可以这样做。