Php 表单未从datatable提交正确的值

Php 表单未从datatable提交正确的值,php,html,forms,post,datatable,Php,Html,Forms,Post,Datatable,看起来很简单,但可能是我忽略了一些东西。 (文档).ready(函数(){ $(“#数据”).dataTable(); }您的表单位于错误的位置,因此您只有一个包含所有用户的表单。尝试此操作将为每个用户提供一个表单 <table id="data"> <thead> <tr> <td>First Name</td> <td>Delete Name</td> <

看起来很简单,但可能是我忽略了一些东西。

(文档).ready(函数(){
$(“#数据”).dataTable();

}
您的表单位于错误的位置,因此您只有一个包含所有用户的表单。尝试此操作将为每个用户提供一个表单

<table id="data">
  <thead>
    <tr>
      <td>First Name</td>
      <td>Delete Name</td>
      <td>Email</td>
      <td></td>
    </tr>
  </thead>
  <tbody>
      <?php 
      $cursor=$collection->find (); 
      foreach ( $cursor as $document ) {
      ?>
<form action="" method="post">
      <tr>
        <td class='First_Name'>
          <?php echo $document [ "First_Name"]; ?>
        </td>
        <td class='Last_Name'>
          <?php echo $document [ "Last_Name"]; ?>
        </td>
        <td class='Email'>
          <?php echo $document [ "Email"]; ?>
        </td>
        <td>
          <input type="hidden" name=hidden value='<?php echo $document ["First_Name"]; ?>'>
          <input type="submit" value="Delete" name="deleteUser">
        </td>
      </tr>
</form>
      <?php }?>
  </tbody>
</table>

名字
删除名称
电子邮件
另请注意,按名字删除用户听起来很危险。我会按
id
email
删除


您当前脚本的功能示例,因此您有
abc123.php
,并将其作为
GET
?a=1&a=2&a=3&a=4&a=5
提交给它,因为它们都有相同的名称。每次迭代都会覆盖上一次,因此如果
print\r($\u GET);
已运行
Array([a]=>5)
将被输出。

您确定表单中的name=hidden而不是name=“hidden”?如果您的答案是肯定的,那么将name=hidden更改为name=“hidden”问题或与答案有关的问题?尝试将name=hidden更改为name=“hidden”。没有运气:(感谢@chris85的建议。我以前尝试过,如果我将表单标签放在标签之间,表单不会被提交。有什么想法吗?另外,我不会根据用户名删除用户,这只是一个示例。如果这解决了您的问题,请务必接受它。