Skip to:
Content

bbPress.org

Ticket #745: 745.diff

File 745.diff, 3.7 KB (added by mdawaffe, 19 years ago)
  • bb-includes/classes.php

     
    285285
    286286                        $fields .= ", MIN(p.post_id) as post_id";
    287287
     288
     289                        if ( defined('BB_MYSQLI') && BB_MYSQLI )
     290                                $mysql_version = mysqli_get_client_info();
     291                        else
     292                                $mysql_version = mysql_get_client_info();
     293
    288294                        // GROUP_CONCAT requires MySQL >= 4.1
    289                         if ( version_compare('4.1', mysql_get_client_info(), '<=') )
     295                        if ( version_compare('4.1', $mysql_version, '<=') )
    290296                                $fields .= ", GROUP_CONCAT(p.post_text SEPARATOR ' ') AS post_text";
    291297                        else
    292298                                $fields .= ", p.post_text";
  • bb-includes/db-mysqli.php

     
    11<?php
    22
     3define('BB_MYSQLI', true);
     4
    35define('OBJECT', 'OBJECT', true);
    46define('ARRAY_A', 'ARRAY_A', false);
    57define('ARRAY_N', 'ARRAY_N', false);
     
    7779               
    7880                $this->$dbhname = @mysqli_connect( $server->host, $server->user, $server->pass, null, $server->port );
    7981
    80                 if ( !empty($this->charset) && version_compare(mysql_get_server_info(), '4.1.0', '>=') )
     82                if ( !empty($this->charset) && version_compare(mysqli_get_server_info($this->$dbhname), '4.1.0', '>=') )
    8183                        $this->query("SET NAMES '$this->charset'");
    8284
    8385                $this->select( $server->database, $this->$dbhname );
  • bb-includes/db.php

     
    11<?php
    22
     3define('BB_MYSQLI', false);
     4
    35define('OBJECT', 'OBJECT', true);
    46define('ARRAY_A', 'ARRAY_A', false);
    57define('ARRAY_N', 'ARRAY_N', false);
  • bb-admin/upgrade-schema.php

     
    22global $bb_queries, $bbdb;
    33
    44$charset_collate = '';
     5$user_charset_collate = '';
    56
    6 if ( version_compare(mysql_get_server_info(), '4.1.0', '>=') ) {
     7if ( !defined( 'BB_MYSQLI' ) )
     8        die( __('Database class not loaded.') );
     9
     10$db = $bbdb->db_connect();
     11$mysql_db_version = BB_MYSQLI ? mysqli_get_server_info( $db ) : mysql_get_server_info();
     12
     13$db = $bbdb->db_connect( "DESCRIBE $bbdb->users" );
     14$mysql_user_db_version = BB_MYSQLI ? mysqli_get_server_info( $db ) : mysql_get_server_info();
     15
     16if ( version_compare($mysql_db_version, '4.1.0', '>=') ) {
    717        if ( ! empty($bbdb->charset) )
    818                $charset_collate = "DEFAULT CHARACTER SET $bbdb->charset";
    919        if ( ! empty($bbdb->collate) )
    1020                $charset_collate .= " COLLATE $bbdb->collate";
    1121}
    1222
     23if ( version_compare($mysql_user_db_version, '4.1.0', '>=') ) {
     24        if ( ! empty($bbdb->charset) )
     25                $user_charset_collate = "DEFAULT CHARACTER SET $bbdb->charset";
     26        if ( ! empty($bbdb->collate) )
     27                $user_charset_collate .= " COLLATE $bbdb->collate";
     28}
     29
    1330$bb_queries = "CREATE TABLE $bbdb->forums (
    1431  forum_id int(10) NOT NULL auto_increment,
    1532  forum_name varchar(150)  NOT NULL default '',
     
    7996  display_name varchar(250) NOT NULL default '',
    8097  PRIMARY KEY  (ID),
    8198  UNIQUE KEY user_login (user_login)
    82 ) $charset_collate;
     99) $user_charset_collate;
    83100CREATE TABLE $bbdb->usermeta (
    84101  umeta_id bigint(20) NOT NULL auto_increment,
    85102  user_id bigint(20) NOT NULL default '0',
     
    88105  PRIMARY KEY  (umeta_id),
    89106  KEY user_id (user_id),
    90107  KEY meta_key (meta_key)
    91 ) $charset_collate;
     108) $user_charset_collate;
    92109CREATE TABLE $bbdb->tags (
    93110  tag_id bigint(20) unsigned NOT NULL auto_increment,
    94111  tag varchar(200) NOT NULL default '',