放置在代码的某些行之间时,数组内容显示不佳
Posted
技术标签:
【中文标题】放置在代码的某些行之间时,数组内容显示不佳【英文标题】:Array contents not displaying well, when placed between certain lines of the code 【发布时间】:2012-04-06 14:21:46 【问题描述】:每当我移动生成成绩为“F”的课程的代码块时,它都不会回显符合标准的课程。但是当我将它移到脚本的主 div 标题的开头时,它显示得很好。问题可能是什么?为了打印出来,我实际上希望它位于脚本的末尾。我还检查了源代码,但我正在寻找的参数不存在。
Pastebin of full code
echo "<table bgcolor = red >";
echo "<tr align= \"center\">";
$carry_over = array();
$score_count = mysql_numrows($query8);
echo "<th>"."Failed Courses : "."</th>";
if($score_count !== 0)
while ($row8 = mysql_fetch_assoc($query8))
echo"<td>". $row8['course_code']."</td>;
echo "</tr>\n";
echo "</table>";
【问题讨论】:
【参考方案1】:你为什么要这样做?
echo "<th>"."Failed Courses : "."</th>";
做
echo "<th>"."Failed Courses : </th>";
在你做一个while循环之前,试着看看你的结果是什么样子的。
$row8 = mysql_fetch_assoc($query8)
然后print_r($row8);
发布你的结果。
表结构也应该是
<table>
<th></th>
<tr>
<td></td>
</tr>
</table>
【讨论】:
【参考方案2】:这似乎是一段很长的代码,所以我把它贴在这里,我不打算用它来回答你的问题,因为我不能让它做你的事情'再说一遍。
php 允许在 PHP 标记之外设置信息,当这种情况发生时,它会被视为常规 html。
例如
<?php
If(2==2)
?><b>HELLO!</b><?php
?>
和
<?php
if(2==2)
echo "<b>HELLO!</b>";
?>
两者都会导致<b>HELLO!</b>
输出到屏幕上。这对于可能需要在多个块中包含大量 HTML 的内容,以及可能需要大量样式定义或其他需要双引号的地方的 HTML 很有用,例如
<div id="list_row[$i]" class="something something2 something3">
必须转义为
echo <div id=\"list_row[$i]\" class=\"something something2 something3\">
而使用上述事实,它可以或多或少完整地放在 php 中。现在,$i 部分仍然需要一个 echo
语句,因为我认为 PHP 不会处理文本,但我从未尝试过,所以我不能确定。
至于你的 HTML,
<th>
标签是一个标题,也就是表格的顶部。 <td>
是表格数据单元格。
似乎您对同一个 MySQL 表进行了很多不必要的调用,我希望我可以将其压缩一点。
【讨论】:
【参考方案3】:您在此处提供的示例与您链接到的 pastebin 代码之间存在不一致。你用的是哪个版本?
如果是 pastebin 版本,您可能会遇到此行的问题:
echo "<th>"."Failed Courses";
您缺少</th>
标签,这可能会影响您的输出。
【讨论】:
以上是关于放置在代码的某些行之间时,数组内容显示不佳的主要内容,如果未能解决你的问题,请参考以下文章
confirm显示数组中的内容时,总是带一个逗号分隔的解决方法