0

我对php比较陌生。我有以下问题。假设我有一个页面

  • 具有两个字段 x、y 和两个按钮的表单:提交和清除;
  • 一个表格,显示 x、y 的 db 记录,带有两个按钮,编辑和删除

当我在表单字段中输入值并按下按钮时,提交将数据插入数据库;然后将数据显示在下表中;

当我在表格上按编辑时,表格中会填充来自所选记录的数据。现在我想提交以更新记录,而不仅仅是插入新记录。

我应该如何进行?

谢谢!!!

朱塞佩

4

3 回答 3

1

您应该在表单中添加一些隐藏字段以区分更新和插入。

一个很好的方法是例如把你的主键有字段

<input name="id" type="hidden" value="<?= $row['id']"/>

在 PHP 代码之后你可以做这样的事情

if(isset($_POST['id']) && $_POST['id'] != 0){
 // this is an update 
 $sql = "UPDATE ...."
 ...
} else {
 $sql = "INSERt ...";
 ...
}

对于插入表单,不要放置隐藏输入或将值设为 0

于 2010-03-04T10:22:12.327 回答
0

首先,您应该将当前编辑的 id 存储在隐藏字段或查询字符串之类的地方,一旦完成,您应该使用该update语句来更新记录,而不是插入新的记录,例如:

// sql query
update tablename set fieldname = 'fieldvalue'......... and son

您需要显示您的代码以获得准确的答案。

于 2010-03-04T10:21:07.910 回答
0
  1. 向您的行添加一个标识符:数据库中的一个 ID 列(最好是 UNSIGNED INTEGER),它也在表中(您可以将其用作用于编辑条目的 url 中的查询字符串),以及作为隐藏输入在表格中
  2. 如果要添加条目,请确保将隐藏输入设置为 null 或零(或其他不能作为有效标识符的值)
  3. 每当提交表单时,测试标识符是否为空或其他
  4. 如果标识符为空,则像以前一样添加
  5. 如果标识符不为空,则使用输入中的标识符更新元素
于 2010-03-04T10:21:23.327 回答