DHTMLX网格加载方法不从php文件加载数据

时间:2014-12-03 17:11:27

标签: javascript php dhtmlx

我试图从MySQL数据库加载数据并将其显示在dhtmlxgrid上。 以下是HTML文件中的代码:

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>my test</title>
    <link rel="STYLESHEET" type="text/css" href="codebase/dhtmlx.css"/>

<script src="codebase/dhtmlx.js"></script>
</head>
<body>
<div id="gridbox" style="width:100%;height:100%;"></div>
    <script>
        mygrid = new dhtmlXGridObject('gridbox');
        mygrid.setImagePath("codebase/imgs");          //the path to images required by grid   
        mygrid.setHeader("uid,username,password, usertype,locname");//the headers of columns        
        mygrid.setInitWidths("100,250,150,100,*");          //the widths of columns     
        mygrid.setColAlign("right,left,left,left,left");       //the alignment of columns
        mygrid.setColTypes("ro,ed,ed,ed,ed");                //the types of columns          
        mygrid.setColSorting("int,str,str,int,str");          //the sorting types 
        mygrid.init();      //finishes initialization and renders the grid on the page 
        mygrid.load("connector.php");  



    </script>
</body>

这是connector.php文件:

<?php

require_once("samples/dhtmlxForm/06_data/php/connector/grid_connector.php");//includes related connector file

$res=mysql_connect("localhost","root","anahon1");//connects to server containing the desired DB
mysql_select_db("ssl_pmts");      //connects to the DB. 'sampledb' is the name of our DB
$conn = new GridConnector($res,"MySQL");                     //connector initialization
$conn->dynamic_loading(100);
 $conn->render_table("users","uid","uid,username,password,usertype,locname");

?>

结果index.html文件为:

enter image description here

如果我直接打开connector.php文件,我会得到以下内容:

enter image description here

问题是由于某种原因数据未在网格中列出。这个例子应该是直截了当的,但它不起作用,我是dhtmlxgrid的新手,所以我不知道这是一个我不知道的设置或代码。

表结构如下:

&#13;
&#13;
CREATE TABLE `users` (
  `uid` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(45) NOT NULL,
  `password` varchar(45) NOT NULL,
  `usertype` int(11) NOT NULL,
  `locname` varchar(45) DEFAULT NULL,
  PRIMARY KEY (`uid`),
  UNIQUE KEY `ID_UNIQUE` (`uid`),
  UNIQUE KEY `name_UNIQUE` (`username`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:0)

我得到了它的工作。问题在于div的大小。我改成了:

<div id="gridbox" style="width:700px;height:700px;"></div>

现在它正在运作。

之前,我不知道为什么不这样做

答案 1 :(得分:0)

只是为了帮助其他人看这篇文章 - 我遇到了类似的问题,其中正在加载数据并正确生成html(检查元素显示正在生成和填充单元格,只是未显示)。看来你需要在#gridbox div上设置一个高度。