Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
I am trying to have a jqgrid on my webpage with all the functionality. Currently I am able to fill the grid with data from mysql database. Now I have kept add:true in the navgrid option and with the '+' icon it opens a add dialog box with 3 fields which on submit I need to add to mysql database. Here's my jqgrid code:
 
<pre lang="Javascript">
<script type="text/javascript">
jQuery(document).ready(function(){
$("#grid").jqGrid({
   // data: mydata,
    datatype: 'json',
    mtype: 'POST',
    url: 'showResources.php',
    width: 700,
    colNames:["LAB NAME","RESOURCE NAME","DESCRIPTION"],
    colModel:[
    {name:'lab_name', index:'lab_name', width:40,editable:true, edittype: 'select', editoptions:{value:"nccs:NCCS;tcs:TCS;iisc:IISC;icgeb:ICGEB", dataInit:             function(elem)
        {
                $(elem).width('auto');
        }
}},
    {name:'resource_name', index:'resource_name', width:50,editable:true, editoptions:{size:'auto'}},
    {name:'description', index:'description', width:100,editable:true, edittype: 'textarea', editoptions:{rows:"2",cols:"20"}},
    ],
    pager: "#pager",
    rowNum:10,
    rownumbers: true,
    rowList:[10,20,30],
    gridview: true,
    sortname: 'id',
    viewrecords: true,
    loadonce: true,
    sortorder: "desc",
    caption:"Resources",
    height: 250,
    editurl: 'addResource.php'
    }).navGrid('#pager',{edit:false,add:true,del:false,search:true},{width: '330', closeAfterAdd: true });
});
&lt;/script>
</pre>
 
Here url:showResource.php is the page where I have the logic to fetch data into grid from mysql, and editurl: 'addResource.php' is where my logic for adding the row is which is:
 
code:
 
<pre lang="PHP">$lab_name = $_POST['lab_name'];  //lab_name field from POST above
    $resource_name = $_POST['resource_name']; //resource_name field from POST above
    $description = $_POST['description'];  //description field from POST above
    $tb_name = 'tb_systb_resources';
 
    $add_query = "INSERT INTO $tb_name ('','lab_name','resource_name','description') VALUES ('',$lab_name,$resource_name,$description)";
    $result = mysql_query($add_query);
    if($result)
    {
        echo("<br>Input data is succeed");
    }
    else
    {
        echo("<br>Input data is fail");
    }</pre>
 
Now when the page is loaded it says
 
Notice: Undefined index: lab_name in /opt/lampp/htdocs/hemang/addResource.php on line 10
 
Notice: Undefined index: resource_name in /opt/lampp/htdocs/hemang/addResource.php on line 11
 
Notice: Undefined index: description in /opt/lampp/htdocs/hemang/addResource.php on line 12
 
which i have printed and the grid is filled, and the data does add from the dialog but does not store to db. So when I refresh the page or grid it disappears. I am not sure of how to pass the 3 fields' values from the submit button in add dialog box.
 
Please help.
Posted 28-Nov-12 21:12pm

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 277
1 Maciej Los 220
2 DamithSL 190
3 Raul Iloc 185
4 Richard MacCutchan 175
0 OriginalGriff 5,130
1 DamithSL 4,197
2 Maciej Los 3,670
3 Kornfeld Eliyahu Peter 3,470
4 Sergey Alexandrovich Kryukov 2,821


Advertise | Privacy | Mobile
Web04 | 2.8.141216.1 | Last Updated 29 Nov 2012
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100