我的 php 文件中有一个 jqgrid。我想在该网格中执行添加、编辑、删除功能。以下是 JQGrid 的代码
<script type="text/javascript">
$(function() {
$("#list1").jqGrid({
url:'testJson.php',
datatype: 'json',
colNames:['sno','occasion','greeting'],
colModel :[
{name:'sno', index:'sno',width: 100,searchoptions: { sopt: ['eq', 'ne','cn']},edittype:'text',edit:true,editable:true},
{name:'occasion', index:'occasion',search: false,width: 120,edittype:'text',edit:true,editable:true},
{name:'greeting', index:'greeting',width: 120,edittype:'text',edit:true,editable:true,searchoptions: { sopt: ['eq', 'ne','cn']}},
],
pager: '#pager',
rowNum: 5,
rowList:[5,20,30],
sortname: 'id',
sortorder: 'desc',
viewrecords: true,
height: 'auto',
width: 725,
shrinkToFit: false,
gridview: true,
caption: 'Members',
editurl:"update.php"
});
jQuery("#list1").jqGrid('navGrid','#pager',{edit:true,add:true,del:true});
});
</script>
在 Editurl 页面,即 update.php 文件中,我编写了以下代码来添加、编辑、删除一行。
mysql_connect($dbserver, $dbuser, $dbpassword);
mysql_select_db($dbname);
$sno = $_POST['sno'];
$occ = $_POST['occasion'];
$gr = $_POST['greeting'];
if ($_POST['oper'] == 'add') {
$q = mysql_query("insert into t1 values('$sno','$occ','$gr')") or die(mysql_error());
}
if ($_POST['oper'] == 'edit') {
$q = mysql_query("update t1 set sno='$sno',occasion='$occ',greeting='$gr' where sno='$sno'")or die(mysql_error());
}
if ($_POST['oper'] == 'del') {
$q = mysql_query("delete from t1 where rowid='$_POST[id]'")or die(mysql_error());
}
所有添加和编辑功能都在工作,只有删除查询不起作用。首先我尝试过
$q = mysql_query("delete from t1 where sno='$sno'")or die(mysql_error());
该查询不起作用,我收到类似 sno、occasion、greetings are undefined 之类的错误。因为 post 属性是 oper,id only 。而且我不知道如何使用该 ID 删除一行。
请给我正确的方法