Changeset 5236


Ignore:
Timestamp:
03/21/10 23:51:36 (10 years ago)
Author:
nikrou
Message:

Feature 1255 :
only one function
use exceptions to deal with differents possible errors

Location:
trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/common.inc.php

    r5235 r5236  
    105105 
    106106// Database connection 
    107 $pwg_db_link = pwg_db_connect($conf['db_host'], $conf['db_user'], 
    108                               $conf['db_password'], $conf['db_base']); 
    109 pwg_select_db($conf['db_base'], $pwg_db_link); 
     107try 
     108{ 
     109  $pwg_db_link = pwg_db_connect($conf['db_host'], $conf['db_user'], 
     110                                $conf['db_password'], $conf['db_base']); 
     111} 
     112catch (Exception $e) 
     113{ 
     114  my_error(l10n($e->getMessage(), true);  
     115} 
    110116 
    111117pwg_db_check_charset(); 
  • trunk/include/dblayer/functions_mysql.inc.php

    r5230 r5236  
    3333 */ 
    3434 
    35 function pwg_db_connect($host, $user, $password, $database=null, $die=true) 
     35function pwg_db_connect($host, $user, $password, $database) 
    3636 
    37   $link = @mysql_connect($host, $user, $password) or my_error('mysql_connect', $die); 
    38  
    39   return $link; 
    40 } 
    41  
    42 function pwg_select_db($database, $link, $die=true) 
    43 { 
    44   return @mysql_select_db($database, $link) or my_error('mysql_select_db', $die); 
     37  $link = @mysql_connect($host, $user, $password); 
     38  if (!$link) 
     39  { 
     40    throw new Exception("Can't connect to server"); 
     41  } 
     42  if (mysql_select_db($database, $link)) 
     43  { 
     44    return $link; 
     45  } 
     46  else 
     47  { 
     48    throw new Exception('Connection to server succeed, but it was impossible to connect to database'); 
     49  } 
    4550} 
    4651 
  • trunk/include/dblayer/functions_pdo-sqlite.inc.php

    r5230 r5236  
    3434 */ 
    3535 
    36 function pwg_db_connect($host, $user, $password, $database, $die=true) 
     36function pwg_db_connect($host, $user, $password, $database) 
    3737{ 
    3838  global $conf; 
     
    4040  $db_file = sprintf('sqlite:%s/%s.db', $conf['local_data_dir'], $database); 
    4141 
    42   try { 
    43     $link = new PDO($db_file); 
    44   } catch (Exception $e) { 
    45     my_error('sqlite::open', $die); 
     42  $link = new PDO($db_file); 
     43  if (!$link) 
     44  { 
     45    throw new  Exception('Connection to server succeed, but it was impossible to connect to database'); 
    4646  } 
    4747 
     
    5555 
    5656  return $link; 
    57 } 
    58  
    59 function pwg_select_db($database=null, $link=null, $die=null) 
    60 { 
    61   return true; 
    6257} 
    6358 
  • trunk/include/dblayer/functions_pgsql.inc.php

    r5230 r5236  
    3434 */ 
    3535 
    36 function pwg_db_connect($host, $user, $password, $database, $die=true) 
     36function pwg_db_connect($host, $user, $password, $database) 
    3737{ 
    3838  $connection_string = ''; 
     
    5050                                $password, 
    5151                                $database); 
    52   $link = pg_connect($connection_string) or my_error('pg_connect', $die);   
    53  
    54   return $link; 
     52  $link = pg_connect($connection_string); 
     53  if (!$link) 
     54  { 
     55    throw new Exception("Can't connect to server"); 
     56  } 
     57  else 
     58  { 
     59    return $link; 
     60  } 
    5561} 
    5662 
  • trunk/include/dblayer/functions_sqlite.inc.php

    r5230 r5236  
    3434 */ 
    3535 
    36 function pwg_db_connect($host, $user, $password, $database, $die=true) 
     36function pwg_db_connect($host, $user, $password, $database) 
    3737{ 
    3838  global $conf; 
     
    4848    $sqlite_open_mode = SQLITE3_OPEN_READWRITE; 
    4949  } 
    50   try { 
    51     $link = new SQLite3($db_file, $sqlite_open_mode); 
    52   } catch (Exception $e) { 
    53     my_error('sqlite::open', $die); 
     50   
     51  $link = new SQLite3($db_file, $sqlite_open_mode); 
     52  if (!$link) 
     53  { 
     54    throw new  Exception('Connection to server succeed, but it was impossible to connect to database'); 
    5455  } 
    5556 
     
    6364 
    6465  return $link; 
    65 } 
    66  
    67 function pwg_select_db($database=null, $link=null, $die=null) 
    68 { 
    69   return true; 
    7066} 
    7167 
  • trunk/install.php

    r5234 r5236  
    237237if ( isset( $_POST['install'] )) 
    238238{ 
    239   ob_start(); 
    240   if (($pwg_db_link = pwg_db_connect($_POST['dbhost'], $_POST['dbuser'],  
    241                                      $_POST['dbpasswd'], $_POST['dbname'], false))!==false)  
    242   { 
    243     if (pwg_select_db($_POST['dbname'], $pwg_db_link, false)!==false) 
    244     { 
    245       array_push( $infos, l10n('Parameters are correct') ); 
    246     } 
    247     else 
    248     { 
    249       array_push( $errors, 
    250         l10n('Connection to server succeed, but it was impossible to connect to database') ); 
    251     } 
    252     ob_end_clean(); 
    253  
     239  try 
     240  { 
     241    $pwg_db_link = pwg_db_connect($_POST['dbhost'], $_POST['dbuser'],  
     242                                  $_POST['dbpasswd'], $_POST['dbname']); 
     243  
     244    array_push( $infos, l10n('Parameters are correct') ); 
     245     
    254246    $required_version = constant('REQUIRED_'.strtoupper($dblayer).'_VERSION'); 
    255247    if ( version_compare(pwg_get_db_version(), $required_version, '>=') ) 
     
    277269    } 
    278270  } 
    279   else 
    280   { 
    281     array_push( $errors, l10n('Can\'t connect to server') ); 
    282     ob_end_clean(); 
     271  catch (Exception $e) 
     272  { 
     273    array_push( $errors, l10n($e->getMessage())); 
    283274  } 
    284275  $webmaster = trim(preg_replace( '/\s{2,}/', ' ', $admin_name )); 
  • trunk/upgrade.php

    r5234 r5236  
    5252 
    5353// Database connection 
    54 $pwg_db_link = pwg_db_connect($conf['db_host'], $conf['db_user'],  
    55                               $conf['db_password'], $conf['db_base']); 
    56 pwg_select_db($conf['db_base'], $pwg_db_link); 
     54try 
     55{ 
     56  $pwg_db_link = pwg_db_connect($conf['db_host'], $conf['db_user'], 
     57                                $conf['db_password'], $conf['db_base']); 
     58} 
     59catch (Exception $e) 
     60{ 
     61  my_error(l10n($e->getMessage(), true);  
     62} 
    5763 
    5864pwg_db_check_charset(); 
  • trunk/upgrade_feed.php

    r5230 r5236  
    5555// |                         Database connection                           | 
    5656// +-----------------------------------------------------------------------+ 
    57  
    58 $pwg_db_link = pwg_db_connect($conf['db_host'], $conf['db_user'],  
    59                               $conf['db_password'], $conf['db_base']); 
    60 pwg_select_db($conf['db_base'], $pwg_db_link); 
     57try 
     58{ 
     59  $pwg_db_link = pwg_db_connect($conf['db_host'], $conf['db_user'], 
     60                                $conf['db_password'], $conf['db_base']); 
     61} 
     62catch (Exception $e) 
     63{ 
     64  my_error(l10n($e->getMessage(), true);  
     65} 
    6166 
    6267pwg_db_check_charset(); 
Note: See TracChangeset for help on using the changeset viewer.