From 1ce8643b8056266139552045fcdb48bbdb9c665b Mon Sep 17 00:00:00 2001 From: Tim Almdal Date: Fri, 28 Aug 2009 15:17:07 -0700 Subject: Fix for #440. Basically add a check that the mysql version is > 5.0.0. It was felt that actually listing the requirements might be overwhelming to novice users. --- installer/installer.php | 7 +++++++ installer/views/invalid_db_version.html.php | 5 +++++ installer/web.php | 2 ++ 3 files changed, 14 insertions(+) create mode 100644 installer/views/invalid_db_version.html.php (limited to 'installer') diff --git a/installer/installer.php b/installer/installer.php index b0af561e..456cffaa 100644 --- a/installer/installer.php +++ b/installer/installer.php @@ -104,6 +104,13 @@ class installer { mysql_select_db($config["dbname"]); } + static function verify_version($config) { + $result = mysql_query("SHOW VARIABLES WHERE variable_name = \"version\""); + $row = mysql_fetch_object($result); + $version = substr($row->Value, 0, strpos($row->Value, "-")); + return version_compare($version, "5.0.0", ">="); + } + static function db_empty($config) { $query = "SHOW TABLES IN {$config['dbname']} LIKE '{$config['prefix']}items'"; return mysql_num_rows(mysql_query($query)) == 0; diff --git a/installer/views/invalid_db_version.html.php b/installer/views/invalid_db_version.html.php new file mode 100644 index 00000000..8776ac35 --- /dev/null +++ b/installer/views/invalid_db_version.html.php @@ -0,0 +1,5 @@ + +

Uh oh!

+

+ The MySql database that you are referencing is less than the minimum version of 5.0.0. +

diff --git a/installer/web.php b/installer/web.php index f31c0644..aceb5368 100644 --- a/installer/web.php +++ b/installer/web.php @@ -41,6 +41,8 @@ if (installer::already_installed()) { if (!installer::connect($config)) { $content = render("invalid_db_info.html.php"); + } else if (!installer::verify_version($config)) { + $content = render("invalid_db_version.html.php"); } else if (!installer::select_db($config)) { $content = render("missing_db.html.php"); } else if (!installer::db_empty($config)) { -- cgit v1.2.3