尝试在显示结果的编辑链接中将变量传递给URL

时间:2014-12-14 02:11:52

标签: php variables url get

我有一个显示结果页面转储表的内容。我已设法在每个表行的编辑链接中回显。编辑将用户踢到更新记录页面。

我正在尝试将表行中的变量包含到编辑URL中,这样我就可以在更新页面上执行$_GET URL param函数并传播更新表单。

这就是我现在所拥有的:

   echo "<table>";
   /* Get field information for all fields */
   while ($row =  mysqli_fetch_object($queryResult))
   { 
      echo "<tr>";
      echo "<td>" . $row->band_name . "</td><td>" . $row->votes . "</td><td><a href='vote.html?$band_name&$votes'>Edit</a></td>";
      echo "</tr>";
   }

2 个答案:

答案 0 :(得分:1)

首先,请确保正确声明变量。看来这些人在你的网址中是未定义的:

$band_name&$votes

然后正确格式化您的网址:

while ($row =  mysqli_fetch_object($queryResult))
{
    $band_name = $row->band_name;
    $votes = $row->votes;   
    echo "<tr>";
        echo "
            <td>$band_name</td>
            <td>$votes</td>
            <td>
                <a href='vote.html?band_name=".urlencode($band_name)."&votes=$votes'>Edit</a>
            </td>";
    echo "</tr>";
}

你确定它是<a href='vote.html吗? HTML?你无法正确解析这个问题。将其更改为vote.php

然后在vote.php中,只需通过$_GET获取这些值:

<?php

if(isset($_GET['band_name'], $_GET['votes'])) {
    $band_name = $_GET['band_name'];
    $votes = $_GET['votes'];

    // rest of code mysqli etc. etc.
}

?>

答案 1 :(得分:0)

你并不是很清楚究竟什么不起作用,但为了让PHP能够获得查询参数,他们必须有一个名字。

如果更改以下行并添加参数名称,则应该能够使用$ _GET或parse_str访问数据。

      echo "<td>" . $row->band_name . "</td><td>" . $row->votes . "</td><td><a href='vote.html?band_name=$band_name&votes=$votes'>Edit</a></td>";