diff --git a/trunk/module/upgrade/lang/zh-cn.php b/trunk/module/upgrade/lang/zh-cn.php index 245e7ab268..f11189c3bf 100644 --- a/trunk/module/upgrade/lang/zh-cn.php +++ b/trunk/module/upgrade/lang/zh-cn.php @@ -37,7 +37,9 @@ $lang->upgrade->warnningContent = <<zentao.bak EOT; $lang->upgrade->selectVersion = '选择版本'; -$lang->upgrade->fromVersion = '升级版本'; +$lang->upgrade->noteVersion = "务必选择正确的版本,否则会造成数据丢失。"; +$lang->upgrade->fromVersion = '原来的版本'; +$lang->upgrade->toVersion = '升级到'; $lang->upgrade->confirm = '确认要执行的SQL语句'; $lang->upgrade->sureExecute = '确认执行'; diff --git a/trunk/module/upgrade/model.php b/trunk/module/upgrade/model.php index 7ae4d94163..6457b581a1 100644 --- a/trunk/module/upgrade/model.php +++ b/trunk/module/upgrade/model.php @@ -75,13 +75,15 @@ class upgradeModel extends model /* 更新PMS的版本设置。*/ public function updateVersion($version) { + $item->company = $this->app->company->id; $item->owner = 'system'; $item->section = 'global'; $item->key = 'version'; $item->value = $version; $configID = $this->dao->select('id')->from(TABLE_CONFIG) - ->where('owner')->eq('system') + ->where('company')->eq($this->app->company->id) + ->andWhere('owner')->eq('system') ->andWhere('section')->eq('global') ->andWhere('`key`')->eq('version') ->fetch('id'); @@ -105,16 +107,28 @@ class upgradeModel extends model private function execSQL($sqlFile) { $mysqlVersion = $this->loadModel('install')->getMysqlVersion(); - $sqls = explode(';', file_get_contents($sqlFile)); + + /* 去掉注释之后,再用;隔开。*/ + $sqls = explode("\n", file_get_contents($sqlFile)); + foreach($sqls as $key => $line) + { + $line = trim($line); + $sqls[$key] = $line; + if(strpos($line, '--') !== false or empty($line)) unset($sqls[$key]); + } + $sqls = explode(';', join("\n", $sqls)); + foreach($sqls as $sql) { $sql = trim($sql); if(empty($sql)) continue; - if(strpos($sql, 'CREATE') !== false and $mysqlVersion <= 4.1) + if($mysqlVersion <= 4.1) { $sql = str_replace('DEFAULT CHARSET=utf8', '', $sql); + $sql = str_replace('CHARACTER SET utf8 COLLATE utf8_general_ci', '', $sql); } + $sql = str_replace('zt_', $this->config->db->prefix, $sql); try { diff --git a/trunk/module/upgrade/view/execute.html.php b/trunk/module/upgrade/view/execute.html.php index 7ed03d2aeb..06e8a1b0a5 100644 --- a/trunk/module/upgrade/view/execute.html.php +++ b/trunk/module/upgrade/view/execute.html.php @@ -34,7 +34,7 @@ } else { - echo html::linkButton($lang->upgrade->tohome, $this->createLink('index')); + echo html::linkButton($lang->upgrade->tohome, 'index.php'); } ?> diff --git a/trunk/module/upgrade/view/selectversion.html.php b/trunk/module/upgrade/view/selectversion.html.php index 4dddd4d0f7..2d652023dc 100644 --- a/trunk/module/upgrade/view/selectversion.html.php +++ b/trunk/module/upgrade/view/selectversion.html.php @@ -28,7 +28,11 @@ upgrade->selectVersion;?> upgrade->fromVersion;?> - upgrade->fromVersions, $version, 'class=select-3');?> + upgrade->fromVersions, $version) . $lang->upgrade->noteVersion;?> + + + upgrade->toVersion;?> + version;?> upgrade->common);?>