Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTML按钮提交最后一行,而不是PHP SQL查询中的选定行_Php_Mysqli - Fatal编程技术网

HTML按钮提交最后一行,而不是PHP SQL查询中的选定行

HTML按钮提交最后一行,而不是PHP SQL查询中的选定行,php,mysqli,Php,Mysqli,我有一个sql查询,它从db表中获取数据。它从表中得到所有四行,这很好。 我还有一个html按钮,可以使用php insert将所选行数据插入到数据库中的另一个表中 但问题是,在获得所有五行信息后,当我单击第三行或任何行的submit按钮时,它只插入最后一行的数据 我的sql似乎存在一些对齐问题 我的html/sql代码如下所示: <?php $sql2 = "SELECT * FROM landlordsignups "; $result2 = $conn->qu

我有一个sql查询,它从db表中获取数据。它从表中得到所有四行,这很好。 我还有一个html按钮,可以使用php insert将所选行数据插入到数据库中的另一个表中

但问题是,在获得所有五行信息后,当我单击第三行或任何行的submit按钮时,它只插入最后一行的数据

我的sql似乎存在一些对齐问题

我的html/sql代码如下所示:

<?php 
    $sql2 = "SELECT * FROM landlordsignups ";
    $result2 = $conn->query($sql2);
    if ($result2->num_rows > 0) {                               
    while($row2 = $result2->fetch_assoc()) {                                   
?>
<form action="phppage.php" method="post" id="accept">
   <tr >
       <td><?php echo ($row2["name"]); ?></a></td>
       <td><?php echo ($row2["email"]); ?></a></td>
       <td><?php echo ($row2["location"]); ?></td>
       <td><?php echo ($row2["mobile"]); ?></td>
       <td><?php echo ($row2["date2"]); ?></td>
       <td><?php echo md5($row2["password"]); ?></td>
<input type="hidden" name="name" form="accept" value="<?php echo ($row2['name']); ?>" />
<input type="hidden" name="email" form="accept" value="<?php echo ($row2['email']); ?>" />
<input type="hidden" name="location" form="accept" value="<?php echo ($row2['location']); ?>" />
<input type="hidden" name="mobile" form="accept" value="<?php echo ($row2['mobile']); ?>" />
<input type="hidden" name="password" form="accept" value="<?php echo ($row2['password']); ?>" />
<input type="hidden" name="id" form="reject" value="<?php echo ($row2['id']); ?>" />
      <td><button type="submit" form="accept">Accept</button></td>
</form>
<form action="someotherphppage.php" method="post" id="reject">
      <td><button type="submit" form="reject">Reject</button></td>
</form>
</tr> 
<?php     }
     } else {
    echo "0 results";
}
?>


您正在使用相同ID在循环中生成表单,请尝试使表单ID唯一

<form action="phppage.php" method="post" id="accept<?php echo ($row2['id']); ?>"></form>

您正在循环中生成具有相同ID的表单,请尝试使表单ID唯一,例如

<form action="phppage.php" method="post" id="accept<?php echo ($row2['id']); ?>"></form>
从输入、表单和按钮中删除所有
form=“…”
属性

<input type="hidden" name="id" form="reject" value="">
<button type="submit" form="accept">Accept</button>

接受


接受
从输入、表单和按钮中删除所有
form=“…”
属性

<input type="hidden" name="id" form="reject" value="">
<button type="submit" form="accept">Accept</button>

接受


接受

首先-您的代码中有SQLInjection,其次-您将提交
$row2
中的任何内容,我在代码中没有看到任何
选择
,也没有任何复选框或任何其他选择行的方式。所以,也许你的代码执行你告诉他的操作,而不是你希望他执行的操作?我同意这种方法不太安全,但我认为他希望只触发一个表单,所以只应提交标记内的数据@harishk您是否尝试使用浏览器工具调试它以查看提交的帖子版本?首先-您的代码中有SQLInjection,其次-您将提交
$row2
中的任何内容,我在您的代码中没有看到任何
选择
,也没有任何复选框或任何其他方式选择行。所以,也许你的代码执行你告诉他的操作,而不是你希望他执行的操作?我同意这种方法不太安全,但我认为他希望只触发一个表单,所以只应提交标记内的数据@harishk您是否尝试使用浏览器工具调试它以查看提交的帖子?