让我说我检索他们的位置属于top8的所有值。我将它们填入表中,而不是显示不同类型的值,它显示3个表有3个不同的值,这是怎么回事?任何帮助,以便显示属于某些值的不同值?我只需要一个有3个不同值的表。
<?
$facebookID = "top8";
mysql_connect("localhost","root","password") or die(mysql_error());
mysql_select_db("schoutweet") or ie(mysql_error());
$data= mysql_query("SELECT schInitial FROM matchTable WHERE position='".$facebookID."'")
or die(mysql_error());
while($row = mysql_fetch_array($data))
{
?>
<center>
<table border="0" cellspacing="0" cellpadding="0" class="tbl_bracket">
<tr>
<td class="brack_under cell_1"><a href="www.facebook.com"/>team 1.1><?= $row['schInitial']?><a/></td>
<td class="cell_2"> </td>
<td class="cell_3"> </td>
<td class="cell_4"> </td>
<td class="cell_5"> </td>
<td class="cell_6"> </td>
</tr>
<tr>
<td class="brack_under_right_up">team 1.2><?= $row['schInitial']?></</td>
<td class="brack_right"><!--1.2.1--></td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td class="brack_right"><!--2.1--></td>
<td class="brack_under"><!--3.1--></td>
<td><!--here?--></td>
<td><!--there?--></td>
<td><!--everywhere?--></td>
</tr>
</table>
</center>
<?
}
?>
</body>
答案 0 :(得分:1)
因为您在while循环中编写了table
标记 。循环内的所有内容都在每个循环周期完成。如果您只想在输出中有一个表,则必须在循环外打开和关闭表,如下所示:
$data= mysql_query("SELECT schInitial FROM matchTable WHERE position='".$facebookID."'")
or die(mysql_error());
?>
<center>
<table border="0" cellspacing="0" cellpadding="0" class="tbl_bracket">
<?
while($row = mysql_fetch_array($data))
{
?>
<tr>
<td class="brack_under cell_1"><a href="www.facebook.com"/>team 1.1><?= $row['schInitial']?><a/></td>
<td class="cell_2"> </td>
<td class="cell_3"> </td>
<td class="cell_4"> </td>
<td class="cell_5"> </td>
<td class="cell_6"> </td>
</tr>
<tr>
<td class="brack_under_right_up">team 1.2><?= $row['schInitial']?></</td>
<td class="brack_right"><!--1.2.1--></td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td class="brack_right"><!--2.1--></td>
<td class="brack_under"><!--3.1--></td>
<td><!--here?--></td>
<td><!--there?--></td>
<td><!--everywhere?--></td>
</tr>
<?
}
?>
</table>
</center>
然而,那将每个循环打印三行,因此每个记录打印一次(但是你在其中两个中引用了表内容,所以我想这就是你想要的?)。
还要注意一些格式不正确的HTML(例如>
/ team 1.1>
中的team 1.2>
字符。如果要打印>
}}到浏览器的字符,将其编码为HTML实体(在这种情况下为>
)。在第二行的第一列(</
)中,您还可能有多余的</</td>
。< / p>
答案 1 :(得分:1)
那是因为你的<table>
标签在循环中!将<table>
标记放在while循环之外。
答案 2 :(得分:1)
将表格标签放在while循环之外
答案 3 :(得分:0)
你需要在while循环中回显HTML部分,如
echo '<table>'
;