From 459326c932d0dadee69c82a70bdeace5a41a4aca Mon Sep 17 00:00:00 2001 From: ryan Date: Tue, 29 Dec 2009 22:07:35 +0000 Subject: [PATCH] Check PHP and MySQL versions in install.php. see #11666 git-svn-id: http://svn.automattic.com/wordpress/trunk@12577 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-admin/install.php | 17 +++++++++++++++++ wp-admin/upgrade.php | 2 +- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/wp-admin/install.php b/wp-admin/install.php index 8531a4b3f..0e9b87b90 100644 --- a/wp-admin/install.php +++ b/wp-admin/install.php @@ -82,6 +82,23 @@ function display_setup_form( $error = null ) { // Let's check to make sure WP isn't already installed. if ( is_blog_installed() ) {display_header(); die('

'.__('Already Installed').'

'.__('You appear to have already installed WordPress. To reinstall please clear your old database tables first.').'

');} +$php_version = phpversion(); +$mysql_version = $wpdb->db_version(); +$php_compat = version_compare( $php_version, $required_php_version, '>=' ); +$mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' ) || file_exists( WP_CONTENT_DIR . '/db.php' ); + +if ( !$mysql_compat && !$php_compat ) + $compat = sprintf( __('You cannot install because WordPress %1$s requires PHP version %2$s or higher and MySQL version %3$s or higher. You are running PHP version %4$s and MySQL version %5$s.'), $wp_version, $required_php_version, $required_mysql_version, $php_version, $mysql_version ); +elseif ( !$php_compat ) + $compat = sprintf( __('You cannot install because WordPress %1$s requires PHP version %2$s or higher. You are running version %3$s.'), $wp_version, $required_php_version, $php_version ); +elseif ( !$mysql_compat ) + $compat = sprintf( __('You cannot install because WordPress %1$s requires MySQL version %2$s or higher. You are running version %3$s.'), $wp_version, $required_mysql_version, $mysql_version ); + +if ( !$mysql_compat || !$php_compat ) { + display_header(); + die('

' . __('Insufficient Requirements') . '

' . $compat . '

'); +} + switch($step) { case 0: case 1: // in case people are directly linking to this diff --git a/wp-admin/upgrade.php b/wp-admin/upgrade.php index 38f0f18b7..2cb91a23f 100644 --- a/wp-admin/upgrade.php +++ b/wp-admin/upgrade.php @@ -64,7 +64,7 @@ $mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' elseif ( !$php_compat ) printf( __('You cannot upgrade because WordPress %1$s requires PHP version %2$s or higher. You are running version %3$s.'), $wp_version, $required_php_version, $php_version ); elseif ( !$mysql_compat ) - printf( __('You cannot upgrade because because WordPress %1$s requires MySQL version %2$s or higher. You are running version %3$s.'), $wp_version, $required_mysql_version, $mysql_version ); + printf( __('You cannot upgrade because WordPress %1$s requires MySQL version %2$s or higher. You are running version %3$s.'), $wp_version, $required_mysql_version, $mysql_version ); ?>