Hello I am having troubles with my jqgrid, my jqgrid loads an xml file locally(locally all works ), but in the server does not load anything, I tried with every code I found on the internet but I dont know why It is not loading the data in the grid, the jqgrid always shows a message that says Loading… and I wait some time, and then It stopped and does not load anything, can someone help?? locally works but in the server acugis not, please help
this is my code:
$("#listaRedCuidadana").jqGrid({
treeGrid: true,
treeGridModel : 'adjacency',
ExpandColumn : 'distrito',
url: '../../red_ciudadana/controller/controllerMostrarRedCuidadana.php',
treeReader: {
level_field: 'level',
parent_id_field: 'parent_id',
leaf_field: 'isLeaf',
expanded_field: 'expanded'
},
datatype: "xml",
mtype: "POST",
colNames:["id_ciudadano","Distrito","Seccion","Rol","Clave Electoral","Nombre","Apellido Paterno","Apellido Materno"],
colModel:[
{name:'id_ciudadano',index:'id_ciudadano', width:1,hidden:true,key:true},
{name:'distrito',index:'distrito',align:"left"},
{name:'seccion',index:'seccion', width:60,align:"center"},
{name:'rol',index:'rol', width:150,align:"left"},
{name:'clave_electoral',index:'clave_electoral', width:150,align:"center"},
{name:'nombre',index:'nombre', width:100,align:"left"},
{name:'apaterno',index:'apaterno', width:100,align:"left"},
{name:'amaterno',index:'amaterno', width:100,align:"left"}
],
width:'916',
/*autowidth:true,*/
height:'auto',
pager: '#pager',
caption:"COORDINADORES DISTRITALES",
onSelectRow: function(id){
var clv=$('#listaRedCuidadana').jqGrid('getCell',id,4);
mostrarDetallesCuidadano(clv);
initMapa();
}
});
$("#listaRedCuidadana").jqGrid('navGrid',"#pager",{edit:false,add:false,del:false});
and my .php file
<?php
require_once '../../sesion/model/clsSesion.php';
require_once '../../red_ciudadana/model/modelRedCuidadana.php';
if ( stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml") ) {
header("Content-type: application/xhtml+xml;charset=utf-8"); } else {
header("Content-type: text/xml;charset=utf-8");
}
if(isset($_REQUEST['nodeid'])==FALSE) {
$node =0;
}
else{
$node = (integer)$_REQUEST["nodeid"];
}
$clsJqGrid = new redCuidadana();
$et = ">";
echo "<?xml version='1.0' encoding='utf-8'?$et\n";
echo "<rows>";
echo "<page>1</page>";
echo "<total>1</total>";
echo "<records>1</records>";
if($node >0) { //check to see which node to load
$wh = 'parent_id='.$node; // parents
//$n_lvl = $n_lvl+1; // we should ouput next level
} else {
//$wh = 'ISNULL(parent_id)';
$wh ='parent_id=0';// roots
}
$mostrarRegistros= $clsJqGrid->mostrarRegistros($wh);
foreach ($mostrarRegistros as $row){
echo "<row>";
echo "<cell>".$row["id_ciudadano"]."</cell>";
echo "<cell>".$row["distrito"]."</cell>";
echo "<cell>".$row["seccion"]."</cell>";
echo "<cell>".$row["rol"]."</cell>";
echo "<cell>".$row["clave_electoral"]."</cell>";
echo "<cell>".$row["nombre"]."</cell>";
echo "<cell>".$row["apaterno"]."</cell>";
echo "<cell>".$row["amaterno"]."</cell>";
echo "<cell>".$row["level"]."</cell>";
echo "<cell><![CDATA[".$row["parent_id"]."]]></cell>";
if($row["level"] == "2"){echo "<cell>"."true"."</cell>";}
else{echo "<cell>".$row["isLeaf"]."</cell>";}
echo "<cell>".$row["expanded"]."</cell>";
echo "</row>";
}
echo "</rows>";
?>
1. try to simply echo sample xml from php without any logic performed and see if it is received by JS script;
2. as it was said, try to access PHP script directly in your browser and see if it returns valid result;
3. try to debug your code in chrome (not only in ff:firebug), these are both great tools and sometimes chrome can show what ff missed (and vise versa).
These steps will help you to isolate and find problem. If you’ll have all these bullets above checked and problem still there – provide results in topic, so we’ll have oportunity to help you.
Cheers and good luck 😉