Example #1
0
 function get_total_rows()
 {
     if ($this->generate_sql_query()) {
         $this->total_rows_result = \k1lib\sql\sql_query($this->db, $this->query_sql_total_rows, FALSE, FALSE);
         if ($this->total_rows_result) {
             return $this->total_rows_result['num_rows'];
         } else {
             return NULL;
         }
     } else {
         return FALSE;
     }
 }
Example #2
0
function get_table_definition_as_array(\PDO $db, $table_name)
{
    $definition = \k1lib\sql\sql_query($db, "SHOW CREATE TABLE {$table_name}", FALSE);
    $definition_array = explode("\n", $definition['Create Table']);
    // REMOVE THE 'CREATE TABLE PART'
    unset($definition_array[0]);
    // REMOVE THE LAST LINE 'ENGINIE=
    unset($definition_array[count($definition_array)]);
    // REMOVE PRIMARY KEY LINE
    unset($definition_array[count($definition_array)]);
    $definition_array_clean = [];
    foreach ($definition_array as $row => $text) {
        $text = substr($text, 3, -1);
        $field_name = substr($text, 0, strpos($text, "`"));
        $field_definition = substr($text, strpos($text, "`") + 2);
        $definition_array_clean[$field_name] = str_replace(strstr($text, "COMMENT"), "", $field_definition);
        //        $definition_array_clean[$field_name]['definition'] = str_replace(strstr($text, "COMMENT"), "", $field_definition);
        //        $definition_array_cl´ean[$field_name]['comment'] = strstr($text, "COMMENT");
    }
    return $definition_array_clean;
}
Example #3
0
function get_labels_from_table($db, $table_name)
{
    \k1lib\sql\db_check_object_type($db, __FUNCTION__);
    if (!is_string($table_name) || empty($table_name)) {
        die(__FUNCTION__ . " \$table_name should be an non empty string");
    }
    $table_config_array = \k1lib\sql\get_db_table_config($db, $table_name);
    $label_field = \k1lib\sql\get_db_table_label_fields($table_config_array);
    $table_keys_array = \k1lib\sql\get_db_table_keys($table_config_array);
    if (!empty($table_keys_array)) {
        $table_config_array = array_flip($table_keys_array);
    }
    if (count($table_keys_array) === 1) {
        $key_filed = key($table_keys_array);
        $labels_sql = "SELECT {$key_filed} as value, {$label_field} as label FROM {$table_name}";
        $labels_data = \k1lib\sql\sql_query($db, $labels_sql);
        if (!empty($labels_data) && count($labels_data) > 0) {
            $label_array = array();
            foreach ($labels_data as $row) {
                $label_array[$row['value']] = $row['label'];
            }
            return $label_array;
        } else {
            return FALSE;
        }
    } else {
        return FALSE;
    }
}