我是 PHP 编程新手,我尝试学习如何使用数据库。我准备好了 MySQL,有 1 个数据库,包含 1 个包含 7 个条目的表。问题是,当我尝试将条目输出到一个非常简单的表时,在创建表之前它会无故输出 7 次 <BR />。代码是这样的:
<?php
$con=mysqli_connect("localhost","root","**********", "*****");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
} else { echo "Connection was OK! <br/>";}
$result = mysqli_query($con,"SELECT * FROM pelates") or die(mysql_error());
echo "<table border='1'><tr><th>ID</th><th>Onoma</th><th>Epwnymo</th><th>Hlikia</th><th>Genethlia</th></tr>";
while($row = mysqli_fetch_array($result))
{
echo "<tr> <td>" . $row['id'] . "</td> <td>" . $row['name'] . "</td> <td>" . $row['surname'] . "</td> <td>" . $row['age'] . "</td> <td>" . $row['birthday'] . "</td></tr>";
echo "<br>";
}
echo "</table>";
mysqli_close($con);
?>
我相信的一切看起来都不错。这是输出的一部分:
Connection was OK! <br/><table border='1'><tr><th>ID</th><th>Onoma</th>
如您所见,消息“连接正常”和表格之间只有 1 个 < br />。实际上它会产生另外 7 个!这是 Chrome 中检查元素的结果(也与 Firefox 相同!):
Connection was OK!
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<table border='1'><tr><th>
据我了解,当我定义:
$result = mysqli_query($con,"SELECT * FROM pelates") or die(mysql_error());
它需要 7 个结果到“内存”中,但这应该不是真实打印的。为什么它打印 7 个breakrows,而我没有告诉它?我能做些什么来防止它?
非常感谢您抽出宝贵的时间,很抱歉发了这么长的帖子。