为了账号安全,请及时绑定邮箱和手机立即绑定

通过链接发送当前变量值

通过链接发送当前变量值

PHP
MM们 2021-10-15 15:46:27
我有一个从数据库内的数据生成的表。表的每一行都是我数据库的一行。在每一行的末尾,我创建一个链接以开始从表和数据库中删除数据的过程。这是我的代码片段: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: 这是我表中一行的图片:前两列是用户名和名称。您可以看到这些值已设置并显示在while循环中。我希望循环的每次迭代都创建一个唯一链接以从数据库中删除该行。或者只是在这种情况下,单击链接时发送该行的数据值。
查看完整描述

2 回答

?
慕容708150

TA贡献1831条经验 获得超4个赞

您可以使用http_build_query功能:


$qs = [

    'user' => $row["username"],

    'name' => $row["name"],

    // ... 4 more values

];

echo '<th><a href="test.php?' . http_build_query($qs, null, '&amp;', PHP_QUERY_RFC3986) . '">Remove</a></th>';



查看完整回答
反对 回复 2021-10-15
?
守着一只汪

TA贡献1872条经验 获得超3个赞

您没有在链接中定义变量名称。线

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

应该看起来像

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

然后,在您的 test.php 文件中,您将使用$_GET['user']和读取这些变量$_GET['name']

另外,请注意,在您的原始代码中,您使用的urldecodeurlencode


查看完整回答
反对 回复 2021-10-15
  • 2 回答
  • 0 关注
  • 114 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信