PHP SQL 更新在提交时未更新正确的行

标签 php mysql html

我有一个 HTML 文件,它回显循环挂起的好友请求,如下所示:

// pending friend requests
$sql = $conn->prepare("Select * FROM Friends WHERE UserID = '$userID' AND Friends = 'p'");
$sql->execute();
$count = $sql->rowCount();

if($count > 0) { ?>
    <form action="profile.php" method="POST">

    <?php foreach($sql as $result) { ?>
        <input type="text" value="<?php echo $result['FriendName'] ?>" name="result" readonly/>
        <button type="submit" name="accept">Connect</button><button type="submit" name="decline">Decline</button>
        <br />
    <?php }

    echo "</form>";
}   

它很好地循环了选项,但是,当我单击“提交”时,比如第二个或第三个循环选项,它会提交第一个循环选项。我正在另一个页面上做类似的事情,这似乎有效,但似乎只是在该页面上引起了问题,有人能向我解释可能导致此问题的原因以及任何可能的解决方案吗?

最佳答案

试试这个

<?php foreach($sql as $result) { ?>
        <form action="profile.php" method="POST">
            <input type="text" value="<?php echo $result['FriendName'] ?>" name="result" readonly/>
            <button type="submit" name="accept">Connect</button><button type="submit" name="decline">Decline</button>
        </form>
<?php } ?>

关于PHP SQL 更新在提交时未更新正确的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20350504/

相关文章:

php - 从 PHP 查询中获取结果

php - 如何对内部联接进行联接?

MySQL 每个结果返回 2 行

php - 在 Yii2 上编写自定义身份验证机制的最佳实践

javascript - 我想从字段 (B) 硬币值中减去字段 (A) - coin_charge 值,并将结果存储在字段 (B) 硬币中

MySQL - 仅当前一行字段为 0 时才选择行?

javascript - 将内容放入带有图标的列中

html - CSS 根据有效输入更改样式

html - 使用 CSS 在组合框和单选按钮之间切换

php - 将 while 和 foreach 分开并有一个公共(public)数组