Вход Регистрация
Файл: install/inc/ver_tables.php
Строк: 27
<?php

#Данный скрипт добавяет отсутствующие таблицы в базу данных
#Также он используется для установки движка

$tab = mysql_query('SHOW TABLES');
while (
$tables = mysql_fetch_array($tab)) {
    
$_ver_table[$tables[0]] = 1;
}

$k_sql = 0;
$ok_sql = 0;
$opdirtables = opendir(H . 'install/db_tables');
while (
$filetables = readdir($opdirtables)) {
    if (
preg_match('#.sql$#i', $filetables)) {
        
$table_name = preg_replace('#.sql$#i', null, $filetables);
        if (!isset(
$_ver_table[$table_name])) {

            
$sql = sql_parser::getQueriesFromFile(H . 'install/db_tables/' . $filetables);


            for (
$i = 0; $i < count($sql); $i++) {
                
#счетчик запросов (для установщика)
                
$k_sql++;
                if (@
mysql_query($sql[$i])) {
                    
#счетчик успешно выполненных запросов (для установщика)
                    
$ok_sql++;
                }
            }
        }
    }
}
closedir($opdirtables);





if (!isset(
$install)) {

// выполнение одноразовых запросов
    
$opdirtables = opendir(H . 'install/update/');
    while (
$rd = readdir($opdirtables)) {
        if (
preg_match('#^.#', $rd))
            continue;
        if (isset(
$set['update'][$rd]))
            continue;

        if (
preg_match('#.sql$#i', $rd)) {
            include_once 
H . 'sys/inc/sql_parser.php';
            
$sql = SQLParser::getQueriesFromFile(H . 'install/update/' . $rd);
            for (
$i = 0; $i < count($sql); $i++) {
                
mysql_query($sql[$i]);
            }
            
$set['update'][$rd] = true;
            
$save_settings = true;
        } elseif (
preg_match('#.php$#i', $rd)) {
            include_once 
H . 'install/update/' . $rd;
            
$set['update'][$rd] = true;
            
$save_settings = true;
        }
    }

    
closedir($opdirtables);

    if (isset(
$save_settings))
        
save_settings($set);
}
Онлайн: 2
Реклама