如何获取多个按钮的名称/ ID

时间:2014-01-22 17:26:01

标签: php forms

我从我的数据库中获得了用户的id号,我想为每个用户创建一个按钮。我的代码创建了一个显示所有ID的表,并为每个ID创建一个按钮。我无法弄清楚如何获取这些按钮的名称以便在其他代码中使用。我得到的错误是“未定义的变量”(在第3行),我最有可能得到的是因为我要弄错按钮名称。

基本上,第三行中的$ _POST是错误的(可能是其他内容)。我的问题是如何得到我所做的按钮的名称(或id?):我应该如何修复$ _POST或者我应该完全使用其他东西?

<?php 
    if ($_SERVER["REQUEST_METHOD"] == "POST"){
        if(isset($_POST[$n])) header("location:" . $n . ".php");
    }
?>

    <div id="mod_user">
        <table id='mod_table'>
            <th class='ttop'>#</th>
            <th class='ttop'>Page</th>

    <?php
    $result = $db->prepare("SELECT * FROM User");
    $result->execute();
    while ($row = $result->fetch(PDO::FETCH_ASSOC)){
        $n=$row["UserID"];
    ?>

    <form action="" method="post">
        <tr>
        <td class='tben'><?php echo $n; ?></td>
        <td class='tben'><button type='submit' name=<?php echo $n; ?> >Go here</button></td>
        <br />
        </tr>
    </form>

<?php
    } ?>
       </table>
    </div>

1 个答案:

答案 0 :(得分:1)

您可以尝试这样:

<td class='tben'><button type='submit' name="usernames[<?php echo $n ?>]" >Go here</button></td>

因此,您可以从$_POST["usernames"]数组获取按钮名称,如下所示

foreach($_POST["usernames"] as $username => $btn_value)
  echo "$username => $btn_name";