我有一个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"]."...