我有一个SQL表(子级):

ID     |   Name
----------------
I03    | Lucy
I05    | Jade
I06    | Jason


我正在尝试在PHP中创建一个表,该表仅在每一行中显示名称,因此该表只有一列。
我希望每个名称都具有指向此页面的超链接:http://localhost/Child_Stats.php?(x)

“ x”必须是子ID。

因此,例如单击Lucy时,超链接为:http://localhost/Child_Stats.php?'I03'。

到目前为止,这是我的代码:

$c = mysql_connect("localhost", "root", "password");
if (!$conn) {
            die("Unable to connect: ". mysql_error());
            }
mysql_select_db("table", $conn);
$query = "SELECT * FROM Children";
$data = mysql_query($query, $conn);

echo "<table border = 1>
<tr>
<th>Child</th>
</tr>";

while($record = mysql_fetch_array($data)){
        echo "<tr>";
        echo "<td><a href='http://localhost/Child_Stats.php?'".$record['ID']."''>".$record['Name']."</a> </td>";
        echo "</tr>";
        }

echo "</table>";
mysql_close($conn); //close connection


我的代码不起作用,因为我在表中选择的哪个子代的超链接始终为“ http://localhost/Child_Stats.php?”。每个特定孩子的ID均未附加。

最佳答案

查看href属性-您在“?”之后加上了结束星号。在网址中。如果您查看HTML源代码,则会看到ID在星号后附加。删除此星号,以及ID后面的两个星号之一:

echo "<td><a href='http://localhost/Child_Stats.php?".$record['ID']."'>".$record['Name']."</a> </td>";


编辑:正如@DocRattie在评论中所说,您应该将查询字符串更改为具有名称,例如:

...?childid=".$record["ID"]."...

08-18 16:10
查看更多