Example #1
0
 function ReadLOB(&$data, $length)
 {
     if (($read_length = MetabaseReadResultLOB($this->database, $this->result_lob, $data, $length)) < 0) {
         $this->error = MetabaseError($this->database);
     }
     return $read_length;
 }
 function SearchCompleteValues(&$form, $text, &$found)
 {
     $error = '';
     $found = array();
     if (strlen($complete_expression = MetabaseBeginsWith($this->connection, $text)) == 0) {
         return 'it was not possible to build the complete query expression: ' . MetabaseError($this->connection);
     }
     if (!strcmp($complete_values_query = str_replace('{BEGINSWITH}', $complete_expression, $this->complete_values_query), $this->complete_values_query)) {
         return 'the complete values query does not contain the {BEGINSWITH} mark to insert the complete expression';
     }
     if (strlen($text) && $this->complete_values_limit) {
         MetabaseSetSelectedRowRange($this->connection, 0, $this->complete_values_limit);
     }
     if ($r = MetabaseQuery($this->connection, $complete_values_query)) {
         for ($l = 0; !MetabaseEndOfResult($this->connection, $r); $l++) {
             if (!MetabaseFetchResultArray($this->connection, $r, $d, $l)) {
                 $error = 'Could not retrieve the complete values: ' . MetabaseError($this->connection);
                 break;
             }
             $found[$d[0]] = $this->FormatCompleteValue($d);
         }
         MetabaseFreeResult($this->connection, $r);
     } else {
         $error = 'Complete values query execution failed: ' . MetabaseError($this->connection);
     }
     return $error;
 }
Example #3
0
 /**
  * error::display()
  * 
  * displays a page with information to the error
  * 
  * @param errortype $errortype type of the error
  * @param classname $classname name of the class
  * @param info $info more 	
  * @access public 
  * @since 2003-08-08
  * @author Christian Ehret <*****@*****.**> 
  */
 function display($errortype, $classname, $info)
 {
     global $smarty, $request, $gDatabase;
     $pagename = $request->GetURI();
     $smarty->assign('tpl_title', 'Es ist ein Fehler aufgetreten');
     $smarty->assign('tpl_page', $pagename);
     $smarty->assign('tpl_errortype', $errortype);
     $smarty->assign('tpl_classname', $classname);
     $smarty->assign('tpl_info', $info);
     $smarty->assign('tpl_dbinfo', MetabaseError($gDatabase));
     $smarty->display('error.tpl');
     exit;
 }
Example #4
0
 function sqlError($mdb, $query)
 {
     global $metabase_databases;
     $message = "This is Development model .\n";
     $message .= "Error Message : " . MetabaseError($mdb) . "\n";
     $message .= "Sql Error (" . mysql_errno($metabase_databases[1]->connection) . ")  : " . mysql_error($metabase_databases[1]->connection) . "\n";
     $message .= "SQL QUERY : " . $query . "\n";
     //print_r($error);
     echo "<pre>";
     echo $message;
     echo " \n GET =>";
     print_r($_GET);
     echo " \n POST =>";
     print_r($_POST);
     echo " \n SERVER =>";
     print_r($_SERVER);
     exit;
 }
 function GetDefinitionFromDatabase(&$arguments)
 {
     if (strcmp($error = $this->SetupDatabase($arguments), "")) {
         return $this->error = "Could not setup database: {$error}";
     }
     MetabaseSetDatabase($this->database, $database = MetabaseSetDatabase($this->database, ""));
     if (strlen($database) == 0) {
         return "it was not specified a valid database name";
     }
     $this->database_definition = array("name" => $database, "create" => 1, "TABLES" => array());
     if (!MetabaseListTables($this->database, $tables)) {
         return MetabaseError($this->database);
     }
     for ($table = 0; $table < count($tables); $table++) {
         $table_name = $tables[$table];
         if (!MetabaseListTableFields($this->database, $table_name, $fields)) {
             return MetabaseError($this->database);
         }
         $this->database_definition["TABLES"][$table_name] = array("FIELDS" => array());
         for ($field = 0; $field < count($fields); $field++) {
             $field_name = $fields[$field];
             if (!MetabaseGetTableFieldDefinition($this->database, $table_name, $field_name, $definition)) {
                 return MetabaseError($this->database);
             }
             $this->database_definition["TABLES"][$table_name]["FIELDS"][$field_name] = $definition[0];
         }
         if (!MetabaseListTableIndexes($this->database, $table_name, $indexes)) {
             return MetabaseError($this->database);
         }
         if (count($indexes)) {
             $this->database_definition["TABLES"][$table_name]["INDEXES"] = array();
             for ($index = 0; $index < count($indexes); $index++) {
                 $index_name = $indexes[$index];
                 if (!MetabaseGetTableIndexDefinition($this->database, $table_name, $index_name, $definition)) {
                     return MetabaseError($this->database);
                 }
                 $this->database_definition["TABLES"][$table_name]["INDEXES"][$index_name] = $definition;
             }
         }
     }
     if (!MetabaseListSequences($this->database, $sequences)) {
         return MetabaseError($this->database);
     }
     for ($sequence = 0; $sequence < count($sequences); $sequence++) {
         $sequence_name = $sequences[$sequence];
         if (!MetabaseGetSequenceDefinition($this->database, $sequence_name, $definition)) {
             return MetabaseError($this->database);
         }
         $this->database_definition["SEQUENCES"][$sequence_name] = $definition;
     }
     return "";
 }
 function query($query)
 {
     parent::query($query);
     $this->_count = 0;
     $result = MetabaseQuery($this->db, $query);
     if ($result == 0) {
         $this->error = MetabaseError($this->db);
         return false;
     } else {
         $this->result = $result;
         return true;
     }
 }
Example #7
0
                                echo "Test {$test}: a query result large object column is not NULL unlike what was expected{$eol}";
                            }
                        }
                        MetabaseFreeResult($database, $result);
                    }
                } else {
                    $success = 0;
                }
            }
            if ($success && $pass) {
                $passed++;
                echo "OK.{$eol}";
            }
        }
        if (!$success && !strcmp($error, "")) {
            $error = MetabaseError($database);
        }
        if (isset($driver_arguments["CaptureDebug"])) {
            $debug_output .= MetabaseDebugOutput($database);
        }
        MetabaseCloseSetup($database);
    }
} else {
    $error = $manager->error;
}
if (strcmp($error, "")) {
    echo "Error: {$error}{$eol}";
} else {
    echo $failed == 0 ? "Passed all the {$passed} tests that were performed!{$eol}" : ($passed == 1 ? "Passed one test" : "{$passed} tests passed") . ", " . ($failed == 1 ? "Failed one test" : "{$failed} tests failed") . "!{$eol}";
}
if (isset($driver_arguments["CaptureDebug"])) {
 function ValidateGroups(&$arguments)
 {
     if (!isset($arguments["Connection"]) || !$arguments["Connection"]) {
         return "it was not specified the database connection";
     }
     $this->connection = $arguments["Connection"];
     if (isset($arguments["GroupsQuery"])) {
         $this->groups_query = $arguments["GroupsQuery"];
     }
     if (!isset($arguments["OptionsQuery"])) {
         return "it was not specified the query to retrieve the options";
     }
     if (!($this->options_statement = MetabasePrepareQuery($this->connection, $arguments["OptionsQuery"]))) {
         return "Options query preparation failed: " . MetabaseError($this->connection);
     }
     if (isset($arguments["DefaultOption"])) {
         $this->default_option = $arguments["DefaultOption"];
         if (isset($arguments["DefaultOptionValue"])) {
             $this->default_option_value = $arguments["DefaultOptionValue"];
         }
     }
     return "";
 }