我有一个PHP语言的表单,我想用它来插入数据,更新数据和一次删除数据。第一行表用于插入数据,第二行用于编辑或删除数据。
所以,我创建了这样的形式:
仅供参考:UBAH是更新/编辑,HAPUS是删除,TAMBAH是添加/插入
我已经完成了插入数据,但是我在更新或删除数据时遇到困难,因为我选择的按钮的ID总是在最后ID(在图片中ID总是指“Sarjana”)所以它不起作用,因为我只能更新和删除在表调用的最后数据。
所以,我想问的是,如何在没有AJAX的情况下使其工作?因为我在谷歌搜索,他们说它可以用AJAX完成,但我不懂AJAX(除非它没有ajax会永远停留)。而且我不想像“初学者示例”那样创建一个href链接,将其扔到另一个页面然后编辑/删除它。
注意:它就像ASP的列表视图,但我想在PHP代码中执行此操作。最后的话,我想在我的PHP代码中创建内联编辑。
我希望你理解并抱歉我的英语不好。
答案 0 :(得分:2)
为每个提交按钮添加唯一ID:
<input type="submit" name="submit[1]" value="Submit">
<input type="submit" name="submit[2]" value="Submit">
<input type="submit" name="submit[3]" value="Submit">
然后你从$ _POST或$ _GET中获取id。例如:
Array
(
[submit] => Array
(
[3] => Submit
)
)
编辑:
将此概念 - HTML表单元素添加到PHP数组 - 并将其应用于其他元素。
<table>
<tr>
<th>Program</th>
<th>Department</th>
<th></th>
</tr>
<tr>
<td><input type="text" name="program[1]" value=""></td>
<td><input type="text" name="department[1]" value=""></td>
<td>
<input type="submit" name="edit[1]" value="Edit">
<input type="submit" name="delete[1]" value="Delete">
</td>
</tr>
<tr>
<td><input type="text" name="program[2]" value=""></td>
<td><input type="text" name="department[2]" value=""></td>
<td>
<input type="submit" name="edit[2]" value="Edit">
<input type="submit" name="delete[2]" value="Delete">
</td>
<tr>
<td><input type="text" name="program[3]" value=""></td>
<td><input type="text" name="department[3]" value=""></td>
<td>
<input type="submit" name="edit[3]" value="Edit">
<input type="submit" name="delete[3]" value="Delete">
</td>
</tr>
</table>
再次:使用唯一ID将每一行的表单元素分开。
这是一种在PHP中获取数据的方法。显然,您需要从提交按钮获取ID,然后使用该ID引用$ _POST或$ _GET数组中的元素。
if ( isset($_POST['edit']) && is_array($_POST['edit']) ) {
$key = key($_POST['edit']);
$program = $_POST['program'][$key];
$department = $_POST['department'][$key];
}