1

私の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 が定義されていないなどのエラーが発生しました。投稿属性は oper,id のみなので。そして、そのIDを使用して行を削除する方法がわかりません。

正しい方法を教えてください

4

0 に答える 0