通过链接发送当前变量值

我有一个从数据库内的数据生成的表。表的每一行都是我数据库的一行。在每一行的末尾,我创建一个链接以开始从表和数据库中删除数据的过程。这是我的代码片段:


if ($result->num_rows > 0) {

    while ($row = $result->fetch_assoc()) {

        echo "<tr>";

        echo "<th>".$row["username"]."</th>";

        $user = $row["username"];

        echo "<th>".$row["name"]."</th>";

        $name = $row["name"];

        echo "<th><a href='./test.php'.urlencode($user)>Remove</a></th>";

        echo "</tr>";

    }

}

如您所见,单击链接后,我想test.php使用已设置的变量(及其该行的值)运行。我试图这样做,urlencode但是在执行 a 时echo $user,它返回为未定义的变量。我也试过了echo "<th><a href='./test.php?link='$user>Remove</a></th>";。我希望能够发送最多 6 个带值的变量。


编辑 1: 这是我表中一行的图片:

http://img2.mukewang.com/616931e60001611310000055.jpg

前两列是用户名和名称。您可以看到这些值已设置并显示在while循环中。我希望循环的每次迭代都创建一个唯一链接以从数据库中删除该行。或者只是在这种情况下,单击链接时发送该行的数据值。


MM们
浏览 115回答 2
2回答

慕容708150

您可以使用http_build_query功能:$qs = [&nbsp; &nbsp; 'user' => $row["username"],&nbsp; &nbsp; 'name' => $row["name"],&nbsp; &nbsp; // ... 4 more values];echo '<th><a href="test.php?' . http_build_query($qs, null, '&amp;', PHP_QUERY_RFC3986) . '">Remove</a></th>';

守着一只汪

您没有在链接中定义变量名称。线echo&nbsp;"<th><a&nbsp;href='./test.php'.urldecode($user)>Remove</a></th>";应该看起来像echo&nbsp;"<th><a&nbsp;href='./test.php?user=".urlencode($user)."&name=".urlencode($name)."'>Remove</a></th>";然后,在您的 test.php 文件中,您将使用$_GET['user']和读取这些变量$_GET['name']。另外,请注意,在您的原始代码中,您使用的urldecode是urlencode
打开App,查看更多内容
随时随地看视频慕课网APP