roundcubemail/program/lib/Roundcube/rcube_db_oracle.php
protected function conn_create($dsn)
    {
        // Get database specific connection options
        $dsn_options = $this->dsn_options($dsn);

        $function = $this->db_pconn ? 'oci_pconnect' : 'oci_connect';

        if (!function_exists($function)) {
            $this->db_error     = true;
            $this->db_error_msg = 'OCI8 extension not loaded. See http://php.net/manual/en/book.oci8.php';

            rcube::raise_error(array('code' => 500, 'type' => 'db',
                'line' => __LINE__, 'file' => __FILE__,
                'message' => $this->db_error_msg), true, false);

            return;
        }

        // connect
        $dbh = @$function($dsn['username'], $dsn['password'], $dsn_options['database'], $dsn_options['charset']);

        if (!$dbh) {
            $error              = oci_error();
            $this->db_error     = true;
            $this->db_error_msg = $error['message'];

            rcube::raise_error(array('code' => 500, 'type' => 'db',
                'line' => __LINE__, 'file' => __FILE__,
                'message' => $this->db_error_msg), true, false);

            return;
        }

        // configure session
        $this->conn_configure($dsn, $dbh);

        return $dbh;
    }
protected function conn_create($dsn)
    {
        // Get database specific connection options
        $dsn_options = $this->dsn_options($dsn);

        $function = $this->db_pconn ? 'oci_pconnect' : 'oci_connect';

        if (!function_exists($function)) {
            $this->db_error     = true;
            $this->db_error_msg = 'OCI8 extension not loaded. See http://php.net/manual/en/book.oci8.php';

            rcube::raise_error(array('code' => 500, 'type' => 'db',
                'line' => __LINE__, 'file' => __FILE__,
                'message' => $this->db_error_msg), true, false);

            return;
        }

        // connect
        $dbh = @$function($dsn['username'], $dsn['password'], $dsn_options['database'], $dsn_options['charset']);

        if (!$dbh) {
            $error              = oci_error();
            $this->db_error     = true;
            $this->db_error_msg = $error['message'];

            rcube::raise_error(array('code' => 500, 'type' => 'db',
                'line' => __LINE__, 'file' => __FILE__,
                'message' => $this->db_error_msg), true, false);

            return;
        }

        // configure session
        $this->conn_configure($dsn, $dbh);

        return $dbh;
    }
protected function conn_create ( $ dsn ) { // Get database specific connection options $ dsn_options = $ this -> dsn_options ( $ dsn ) ; $ function = $ this -> db_pconn ? 'oci_pconnect' : 'oci_connect' ; if ( ! function_exists ( $ function ) ) { $ this -> db_error = true ; $ this -> db_error_msg = 'OCI8 extension not loaded. See http://php.net/manual/en/book.oci8.php' ; rcube :: raise_error ( array ( 'code' => 500 , 'type' => 'db' , 'line' => __LINE__ , 'file' => __FILE__ , 'message' => $ this -> db_error_msg ) , true , false ) ; return ; } // connect $ dbh = @ $ function ( $ dsn [ 'username' ] , $ dsn [ 'password' ] , $ dsn_options [ 'database' ] , $ dsn_options [ 'charset' ] ) ; if ( ! $ dbh ) { $ error = oci_error ( ) ; $ this -> db_error = true ; $ this -> db_error_msg = $ error [ 'message' ] ; rcube :: raise_error ( array ( 'code' => 500 , 'type' => 'db' , 'line' => __LINE__ , 'file' => __FILE__ , 'message' => $ this -> db_error_msg ) , true , false ) ; return ; } // configure session $ this -> conn_configure ( $ dsn , $ dbh ) ; return $ dbh ; }
Create connection instance
Create connection instance