从MS-Access数据库读取jQuery-jTable

时间:2014-05-08 16:37:24

标签: php ms-access jquery-jtable

我正在尝试使用jQuery-jTable通过PHP列出来自MS-Access数据库的数据。 我想更改jTable.org提供的示例:http://www.jtable.org/downloads/jTable-PHP-Samples.zip

<?php

试 {     //打开数据库连接     $ db_connection = odbc_connect(“Persist Security Info = False; DRIVER = {Microsoft Access Driver(* .mdb)}; DBQ = c:\ websiagh \ books \ 54.mdb”,“ADODB.Connection”,“password”,SQL_CUR_USE_ODBC )或死亡('无法连接到54');

//Getting records (listAction)
if($_GET["action"] == "list")
{
    //Get records from database
$query = 'SELECT * FROM asnad WHERE (sanadno Between 10 AND 20 )';
$result = odbc_exec($db_connection , $query );


    //Add all records to an array
    $rows = array();
    while( $row = odbc_fetch_array( $result ) )
    {
        $rows[] = $row;
    }

    //Return result to jTable
    $jTableResult = array();
    $jTableResult['Result'] = "OK";
    $jTableResult['Records'] = $rows;
    print json_encode($jTableResult);
}

...

其余代码未更改。 不使用jTable时,代码(查询执行和使用odbc获取数据)运行良好。但是,当在上面的代码中使用它时,我收到此错误: 与服务器通信时发生错误。 但是当我将数据从MS-Access导出到mysql时,根本就没有问题。

1 个答案:

答案 0 :(得分:0)

对我来说,使用odbc执行查询和获取数据不起作用。这可能取决于Window OS和PHP的版本。

以下情况确实适用于jTables(w3schools.com的信用):

  1. 打开“控制面板”中的“管理工具”图标。
  2. 双击里面的数据源(ODBC)图标。
  3. 选择“系统DSN”选项卡。
  4. 单击“系统DSN”选项卡中的“添加”。
  5. 选择Microsoft Access驱动程序。单击“完成”。
  6. 在下一个屏幕中,单击“选择”以找到数据库。给 数据库a数据源名称(DSN)。
  7. 单击“确定”。
  8. 之后,要创建连接,请使用以下内容(假设您的数据库名为54.mdb):

    $db_connection=odbc_connect('54','','');
    if (!$db_connection) {
      exit("Connection Failed: " . $db_connection);
    } 
    

    其余代码保持原样。

    希望这有帮助。