我有一个 SQL 表(子表):
ID | Name
----------------
I03 | Lucy
I05 | Jade
I06 | Jason
我试图在 PHP 中创建一个表,它只在每一行中显示名称,因此该表只有一列。 我希望每个名字都有指向此页面的超链接:http://localhost/Child_Stats.php?(x)
'x' 必须是 child 的 id。
所以,例如单击露西时,超链接为: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
我的代码不起作用,因为无论我选择哪个 child ,在表中,超链接总是“http://localhost/Child_Stats.php” ?'。每个特定 child 的 ID 都没有附加到它。
最佳答案
查看 href 属性 - 您在“?”之后放置了结束星号。在网址中。如果您查看 HTML 源代码,您会看到 ID 被附加在星号之后。删除这个星号,以及 ID 后面的两个星号之一:
echo "<td><a href='http://localhost/Child_Stats.php?".$record['ID']."'>".$record['Name']."</a> </td>";
编辑:正如@DocRattie 在评论中所说,您应该将查询字符串更改为具有名称,例如:
...?childid=".$record["ID"]."...
关于php - PHP 中的变量与 SQL 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29560701/