VC的强大 + ExtJS的漂亮 + (MySQL+SQlite)数据库 + JavaScript的动态语言的灵活

本文介绍了一种使用JavaScript与SQLite及MySQL数据库进行交互的方法,并展示了如何利用ExtJS框架将获取的数据展示为表格。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2009051200492287.jpg

界面不用多说了吧。喜欢的举手!

这里贴一下数据库访问和ExtJs制作表格的方法

1 访问SQLite 3:

 

function  get_sqlite3_data()
{
  d
= new  Array();

  q
= " SELECT * FROM test_table; " ;
  db.query(q);
  
while (db.fetch())
  {
    idx
= db.get_array_data( " idx " );
    name
= db.get_array_data( " name " );
    email
= db.get_array_data( " email " );
    
    a
= new  Array(idx,name,email);
    d.push(a);
  }

  
return  d;
}

2 访问MySQL

 

2.1 JavaScript部分

 

function  get_myssql_data(host,user,pwd)
{
  create_mysql_data(host,user,pwd);
  
// php=dvm.GetSharedObject("php");alert(php.get_output_string());

  d
= new  Array();

  q
= " SELECT * FROM MyMatters; " ;
  mysql_db.query(q);
  
while (mysql_db.fetch())
  {
    Name
= mysql_db.get_array_data( " Name " );
    Amount
= mysql_db.get_array_data( " Amount " );
    Describe
= mysql_db.get_array_data( " Description " );
    
    a
= new  Array(Name,Amount,Describe);
    d.push(a);
  }

  
return  d;
}

2.2 PHP部分

 

 

class  MySQLAccess
{
  
public   $db ;
  
public   $query_result ;
  
public   $row_array ;

  
public   function  open( $host , $user , $pwd ){
    
$this -> db = mysql_connect ( $host , $user , $pwd );
    
// die($this->db);
     mysql_select_db ( " test " );
    
// $this->query("CREATE TABLE MyMatters(Name varchar(30),Amount int,Kind varchar(16),BuySelf int,Description varchar(255))");
    //die(mysql_errno($this->db) . ": " . mysql_error($this->db));

  }

  
public   function  close(){
    
mysql_close ( $this -> db);
  }

  
public   function  query( $sql ){
    
$this -> query_result = mysql_query ( $sql );
    
// echo($this->query_result);
  }

  
public   function  fetch(){
    
$this -> row_array = mysql_fetch_assoc ( $this -> query_result);
    
if ( $this -> row_array)
      
return   true ;
    
return   false ;
  }

  
public   function  get_array_data( $field_name ){
    
return   $this -> row_array[ $field_name ];
  }
}

 

3 用ExtJs产生表格显示数据

 

function  show_mysql_data(mysql_data_panel,my_data,host,user,pwd)
{
    
var  xg  =  Ext.grid;

    
//  shared reader
     var  reader  =   new  Ext.data.ArrayReader({}, [
       {name: 
' Idx ' },
       {name: 
' Name ' },
       {name: 
' Email ' }
    ]);

    
// //////////////////////////////////////////////////////////////////////////////////////
     //  Grid 1
     // //////////////////////////////////////////////////////////////////////////////////////

    
var  grid1  =   new  xg.GridPanel({
        store: 
new  Ext.data.Store({
            reader: reader,
            data: my_data
        }),
        cm: 
new  xg.ColumnModel([
            {id:
' Idx ' ,header:  " 名称 " , width:  3 , sortable:  true , dataIndex:  ' Idx ' },
            {header: 
" 数量 " , width:  10 , sortable:  true , dataIndex:  ' Name ' },
            {header: 
" 描述 " , width:  10 , sortable:  true , dataIndex:  ' Email ' }
        ]),
        viewConfig: {
            forceFit:
true
        },
        width: 
600 ,
        height: 
300 ,
        collapsible: 
true ,
        animCollapse: 
false ,
        title: 
' MySQL 数据 :  ' + host + " : " + user + "  -  " + pwd,
        iconCls: 
' icon-grid ' ,
        renderTo: mysql_data_panel
    });
}

 

下载

转载于:https://www.cnblogs.com/yesry/archive/2009/05/12/1454557.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值