public function check_db_connection($host, $port, $login, $password, &$database, $tables_prefix)
 {
     try {
         $this->try_db_connection($host, $port, $login, $password, $database, $tables_prefix);
     } catch (UnexistingDatabaseException $ex) {
         if (!$this->create_database($database)) {
             DBFactory::reset_db_connection();
             return self::UNABLE_TO_CREATE_DATABASE;
         } else {
             return $this->check_db_connection($host, $port, $login, $password, $database, $tables_prefix);
         }
     } catch (DBConnectionException $ex) {
         DBFactory::reset_db_connection();
         return self::CONNECTION_ERROR;
     } catch (Exception $ex) {
         DBFactory::reset_db_connection();
         return self::UNKNOWN_ERROR;
     }
     return self::CONNECTION_SUCCESSFUL;
 }
예제 #2
0
 public function check_db_connection($host, $port, $login, $password, &$database, $tables_prefix)
 {
     try {
         $this->try_db_connection($host, $port, $login, $password, $database, $tables_prefix);
     } catch (UnexistingDatabaseException $ex) {
         DBFactory::reset_db_connection();
         return self::UNEXISTING_DATABASE;
     } catch (DBConnectionException $ex) {
         DBFactory::reset_db_connection();
         return self::CONNECTION_ERROR;
     } catch (Exception $ex) {
         DBFactory::reset_db_connection();
         return self::UNKNOWN_ERROR;
     }
     return self::CONNECTION_SUCCESSFUL;
 }