[英]jqgrid not displaying php json data
my jqgrid is not displaying json data returned from my php file.
我的jqgrid没有显示从我的php文件返回的json数据。 php file generates json data >properly but my jqgrid html file is not displaying it .
php文件会正确生成json数据,但我的jqgrid html文件未显示它。 i cant find the reason.
我找不到原因。 Please help.
请帮忙。
myfirstgrid.html myfirstgrid.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Address</title>
<link rel="stylesheet" type="text/css" media="screen" href="css/ui-lightness/jquery- ui-1.10.3.custom.css" />
<link rel="stylesheet" type="text/css" media="screen" href="css/ui.jqgrid.css" />
<script src="js/jquery-1.9.0.min.js" type="text/javascript"></script>
<script src="js/i18n/grid.locale-en.js" type="text/javascript"></script>
<script src="js/jquery.jqGrid.src.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#list").jqGrid({
url: 'example.php',
datatype: 'json',
mtype: "GET",
colNames: ["addressid", "buildingname", "street", "cityid", "countryid", "statteid","pincode","phone","mobile","fax"],
colModel: [
{ name: "addressid", width: 55 },
{ name: "buildingname", width: 90 },
{ name: "street", width: 80, align: "right" },
{ name: "cityid", width: 80, align: "right" },
{ name: "countryid", width: 80, align: "right" },
{ name: "stateid", width: 150, align: "right" },
{ name: "pincode", width: 150, align: "right" },
{ name: "phone", width: 150, align: "right" },
{ name: "mobile", width: 150, align: "right" },
{ name: "fax", width: 150, align: "right" }
],
pager: "#pager",
rowNum: 10,
rowList: [10, 20, 30],
sortname: "invid",
sortorder: "desc",
viewrecords: true,
gridview: true,
autoencode: true,
caption: "Address"
});
});
</script>
</head>
<body>
<table id="list"><tr><td></td></tr></table>
<div id="pager"></div>
</body>
</html>
example.php example.php
<?php
// initialization
$dbhost = "";
$dbuser = "root";
$dbpassword = "ERTFS645@#";
$database = "dbeg";
// connect to the database
$db = mysql_connect($dbhost, $dbuser, $dbpassword) or die("Connection Error: ");
mysql_select_db($database) or die("Database connection error.");
// get the count of rows
$result = mysql_query("SELECT * FROM Address");
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$count = $row['count'];
// create a response array from the obtained result
$i = 0;
while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo json_encode($row);
}
mysql_close($db);
?>
output of example.php example.php的输出
{"addressid":"101","buildingname":"Sundale","street":"OTTP","cityid":"652","countryid":"6","statteid":"65","pincode":"656665","phone":"986346654","mobile":"823343454","fax":"554332"}
{“ addressid”:“ 101”,“ buildingname”:“ Sundale”,“ street”:“ OTTP”,“ cityid”:“ 652”,“ countryid”:“ 6”,“ statteid”:“ 65”,”密码“:” 656665“,”电话“:” 986346654“,”手机“:” 823343454“,”传真“:” 554332“}
You json should look something like 您的json应该看起来像
{
"page": 2,//current page
"total": 2,//number of pages
"records": 11,//# of records in total
"rows": [//array of data
{
"id": "101",//id for this row of data
"cell": [
"101",
"Sundale",
"OTTP",
"652",
"6",
"65",
"656665",
"986346654",
"823343454",
"554332"
]
}
]
}
http://www.trirand.com/blog/jqgrid/jqgrid.html http://www.trirand.com/blog/jqgrid/jqgrid.html
<?php $page = $_GET['page']; // get the requested page
$limit = $_GET['rows']; // get how many rows we want to have into the grid
$sidx = $_GET['sidx']; // get index row - i.e. user click to sort
$sord = $_GET['sord']; // get the direction
$page = 2;
$limit = 30;
if(!$sidx) $sidx =1;
// connect to the database
$db = mysql_connect("localhost", "root", "luis1983") or die("Connection Error: " . mysql_error());
mysql_select_db("wine") or die("Error conecting to db.");
$result = mysql_query("SELECT COUNT(*) AS count FROM wine.wine");
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$count = $row['count'];
if( $count >0 ) {
$total_pages = ceil($count/$limit);
} else {
$total_pages = 0; }
if ($page > $total_pages) $page=$total_pages;
$start = $limit*$page - $limit;
$SQL = "SELECT wine_id, wine_name, wine_ENGINE, winery_id, description FROM wine.wine LIMIT 30";
$result = mysql_query( $SQL ) or die("Couldn t execute query.".mysql_error());
$responce = (object) array('page' => $page, 'total' => $total_pages, 'records' =>$count, 'rows' => "");
$responce->page = $page;
$responce->total = $total_pages;
$responce->records = $count;
$i=0;
while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$responce->rows[$i]['id']=$row['wine_id'];
$responce->rows[$i] ['cell']=array($row['wine_id'],$row['wine_name'],$row['wine_ENGINE'],$row['winery_id'],$row['d escription']);
$i++;
}
echo json_encode($responce);
mysql_close($db);
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.