php表单提交按钮
问题描述:
我对php比较陌生。我有以下问题。 假设我有php表单提交按钮
- 有两个字段x,y和两个按钮的表单页面:提交清晰;
- 的表中显示x的分贝记录,Y具有两个按钮,编辑和删除
当我在表单字段和按下按钮输入值,提交插入在DB中的数据;数据然后显示在下表中;
当我按下表格上的编辑时,窗体将填充选定记录的数据。现在我想提交更新记录,而不是只是插入一个新的。
我该如何继续?
谢谢!
朱塞佩
答
首先,你应该在什么地方存储当前编辑的ID喜欢隐藏字段或查询字符串的,一旦你这样做,你应该使用update
语句更新记录,而不是插入新的东西如:
// sql query
update tablename set fieldname = 'fieldvalue'......... and son
您需要显示您的代码以获取准确答案。
答
- 标识添加到您的行:在数据库中(最好是无符号整数),这也是在表中的ID列(你可以用它在你使用用于编辑条目的URL查询字符串)并作为隐藏输入
- 如果要添加条目,请确保将隐藏输入设置为空或零(或某些其他值不能为有效标识符)
- 每当表单被提交,测试的标识符为空或其他东西
- 如果标识符为空,则像以前一样添加
- 如果标识符不为空,则使用输入中的标识符更新元素
答
您应该在窗体中添加一些隐藏字段以区分更新和插入。
一个好办法做到这一点是,例如把你的主键,场
<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
好吧!好吧,我确实有一个我正在传递的ID。问题是如何告诉“提交”按钮来产生不同的行为。 – Giuseppe
你不必告诉如果没有id或它是例如0它意味着它是一个更新 – RageZ