PHP不存在时回显重复行

Mat*_*ips 1 html php mysql

<html>
<head>
<title>Test</title>
<link rel="stylesheet" type="text/css" href="style.css"> 
</head>
<body>
    <?php 
       $username ="matt";
       $pass = "bs12kfj";
       $db = "mytest";
       $tbl = "test2";
       mysql_connect(localhost,$username,$pass);
       mysql_select_db($db) or die( "Unable to select database");
       $res = mysql_query("SELECT * FROM test2;");
       $num = mysql_numrows($res);
       echo "<table border='2'><tr>The Peeps</tr>"; 
       while ($r = mysql_fetch_array($res)) {
         echo "<tr>";
         foreach($r as $rs){
                     echo "<td>$rs</td>";
                     }
         echo "</tr>";
       }
       ?>

</body>
Run Code Online (Sandbox Code Playgroud)

此代码执行时没有错误,但输出包含每行的每一列的副本,如此.

<table border='2'><tr>The Peeps</tr>
<tr><td>"matt"</td><td>"matt"</td><td>"phillips"</td><td>"phillips></td><td>"mathew.p@waburg.com"</td><td>"mathew.p@waburg.com"</td><td>20</td><td>20</td></tr><tr><td>"paul"</td><td>"paul"</td><td>"franklin"</td><td>"franklin"</td><td>"dude@live.com"</td><td>"dude@live.com"</td><td>30</td><td>30</td></tr><tr><td>"steve"</td><td>"steve"</td><td>"jobs"</td><td>"jobs"</td><td>"sjobs@apple.com"</td><td>"sjobs@apple.com"</td><td>23</td><td>23</td>

我不明白为什么当<td></td>echo语句中只有一个标记时,每列都是重复的.
我还检查了数据库,表中没有重复的条目.

Vic*_*let 6

mysql_fetch_array如果您不提供第二个参数,则会执行此操作:获取一个关联数组,其中值将映射到列名和列索引.

您可以提供MYSQL_ASSOC第二个参数,只包含列名(或使用mysql_fetch_assoc).