Ejemplo n.º 1
0
        }
    }
    closedir($handle);
}
sort($filelist);
//print_vars($filelist);
foreach ($filelist as $file) {
    $filepath = $config['install_dir'] . '/update/' . $file;
    list($filename, $extension) = explode('.', $file, 2);
    if ($filename > $db_rev) {
        if (!$updating) {
            echo "-- 更新数据库/文件架构\n";
        }
        if ($extension == "php") {
            echo sprintf("%03d", $db_rev) . " -> " . sprintf("%03d", $filename) . " ... (php)";
            include_wrapper($filepath);
        } else {
            if ($extension == "sql") {
                echo sprintf("%03d", $db_rev) . " -> " . sprintf("%03d", $filename) . " ... (db)";
                $err = 0;
                if ($fd = @fopen($filepath, 'r')) {
                    $data = fread($fd, 4096);
                    while (!feof($fd)) {
                        $data .= fread($fd, 4096);
                    }
                    foreach (explode("\n", $data) as $line) {
                        if (trim($line)) {
                            print_debug($line);
                            if ($line[0] != "#") {
                                $update = dbQuery($line);
                                if (!$update) {
Ejemplo n.º 2
0
        if (filetype($config['install_dir'] . '/update/' . $file) == 'file' && (preg_match($sql_regexp, $file) || preg_match($php_regexp, $file))) {
            $filelist[] = $file;
        }
    }
    closedir($handle);
}
asort($filelist);
foreach ($filelist as $file) {
    list($filename, $extension) = explode('.', $file, 2);
    if ($filename > $db_rev) {
        if (!$updating) {
            echo "-- Updating database/file schema\n";
        }
        if ($extension == "php") {
            echo sprintf("%03d", $db_rev) . " -> " . sprintf("%03d", $filename) . " ... (file)";
            include_wrapper($config['install_dir'] . '/update/' . $file);
        } elseif ($extension == "sql") {
            echo sprintf("%03d", $db_rev) . " -> " . sprintf("%03d", $filename) . " ... (db)";
            $err = 0;
            if ($fd = @fopen($config['install_dir'] . '/update/' . $file, 'r')) {
                $data = fread($fd, 4096);
                while (!feof($fd)) {
                    $data .= fread($fd, 4096);
                }
                foreach (explode("\n", $data) as $line) {
                    if (trim($line)) {
                        if ($debug) {
                            echo "{$line} \n";
                        }
                        if ($line[0] != "#") {
                            $update = dbQuery($line);