Per-db driver checks
Only show databases that are supported by PHP
This commit is contained in:
parent
fe62c5a13a
commit
39b2688675
@ -12,6 +12,12 @@
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
// Test for support
|
||||
if( ! function_exists('ibase_connect'))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Firebird Database class
|
||||
*
|
||||
|
@ -12,6 +12,12 @@
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
// Test for support
|
||||
if( ! in_array('mysql', pdo_drivers()))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* MySQL specific class
|
||||
*
|
||||
|
@ -12,6 +12,12 @@
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
// Test for support
|
||||
if( ! in_array('odbc', pdo_drivers()))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* ODBC Database Driver
|
||||
*
|
||||
|
@ -12,6 +12,12 @@
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
// Test for support
|
||||
if( ! in_array('pgsql', pdo_drivers()))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* PostgreSQL specifc class
|
||||
*
|
||||
|
@ -12,6 +12,12 @@
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
// Test for support
|
||||
if( ! in_array('sqlite', pdo_drivers()))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* SQLite specific class
|
||||
*
|
||||
|
@ -39,12 +39,7 @@ class Add_DB extends GtkWindow {
|
||||
{
|
||||
$table = new GtkTable();
|
||||
|
||||
$db_types = array(
|
||||
'MySQL',
|
||||
'PostgreSQL',
|
||||
'SQLite',
|
||||
'ODBC'
|
||||
);
|
||||
$db_types = $this->get_available_dbs();
|
||||
|
||||
//Table attach
|
||||
//$tbl->attach(left_start, right_stop, top_start, bottom_stop)
|
||||
@ -102,6 +97,33 @@ class Add_DB extends GtkWindow {
|
||||
|
||||
return $table;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks what database drivers are available
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function get_available_dbs()
|
||||
{
|
||||
$drivers = array();
|
||||
|
||||
// Check if there is pdo support
|
||||
if( ! function_exists('pdo_drivers'))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
$drivers = pdo_drivers();
|
||||
|
||||
if(function_exists('ibase_connect'))
|
||||
{
|
||||
$drivers[] = "Firebird";
|
||||
}
|
||||
|
||||
sort($drivers);
|
||||
|
||||
return $drivers;
|
||||
}
|
||||
}
|
||||
|
||||
// End of add_db.php
|
Reference in New Issue
Block a user