php - 向表格的每一行添加编辑按钮以在 PHP 中更新数据库

标签 php mysql sql

我创建了一个简单的查询,用于从我的数据库中检索记录并将其传递给 html。我想为每一行添加一个编辑/查看按钮,所以经过一些研究,我最终得到了这个:

$query = mysqli_query($con, "SELECT * FROM mytable") or die(mysqli_error($con));
if(mysqli_num_rows($query) > 0) {
    while($row = mysqli_fetch_array($query)) {
        echo "<tr><td>".$row['pId']."</td>";
        echo "<td>".$row['data1']."</td>";
        echo "<td>".$row['data2']."</td>";
        echo "<td><form action='detailform.php' method='POST'><input type='hidden' name='tempId' value='".$row["pId"]."'/><input type='submit' name='submit-btn' value='View/Update Details' /><form></td>";
    }
}

这适用于 1 条记录。但如果我有 2 个或更多,则无论您选择了哪条记录,总是会检索到最新记录。例如,如果您有 5 条记录并且您选择任何一条记录,第 5 条记录将始终被选中,因此我无法更新以前的记录。为什么会这样?我错过了什么吗?

不确定这是否对我的情况有帮助,但这是我的 detailform.php 的基本逻辑:

if(isset($_POST["tempId"]){ 
     //pass data using post then update. Here's where I keep getting only the latest record regardless of selected record from previous page
} else { //add data }

最佳答案

关闭表单:

echo "<td><form action='detailform.php' method='POST'><input type='hidden' name='tempId' value='".$row["pId"]."'/><input type='submit' name='submit-btn' value='View/Update Details' /></form></td></tr>";

第一个发送正确,因为它最接近提交按钮,其余的将更接近最后一个提交按钮

关于php - 向表格的每一行添加编辑按钮以在 PHP 中更新数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21527946/

相关文章:

javascript - 为什么在 IE 中加载图像不显示在页面的中心底部?

php - PHP PDO 的 Mysql 转义 % 和 _

sql - SQL 中的字母数字排序与 LINQ 和 .NET

SQL 服务器 : List all values from tableA for each values in tableB

php - 读取一个 HTML 标签的属性并将其写入另一个 HTML 标签的属性

php - 通过Web界面自定义PDF

mysql - 使用 mysql 和正则表达式模式转换和提取行

mysql - 找不到工件 mysql :mysql-connector-java:

mysql - 删除部分字符串的 SQL 语句

php - 按数字顺序而不是字母顺序列出文件?