Sets the connection's character set.
public set_charset ( resource $dbh, string $charset = null, string $collate = null ) | ||
$dbh | resource | The resource given by mysql_connect |
$charset | string | The character set (optional) |
$collate | string | The collation (optional) |
function connect_s9ydb() { $s9ydb = new wpdb(get_option('s9yuser'), get_option('s9ypass'), get_option('s9yname'), get_option('s9yhost')); $s9ydb->set_charset($s9ydb->dbh, get_option('s9ycharset')); set_magic_quotes_runtime(0); return $s9ydb; }
/** * connectDatabase() * * Initializes a connection to the mysql database. * REQUIRES: databaseSettings portion of state to be set. * * @return boolean True on success; else false. Success testing is very loose. */ function connectDatabase() { $this->_before(__FUNCTION__); global $wpdb; $wpdb = new wpdb($this->_state['databaseSettings']['username'], $this->_state['databaseSettings']['password'], $this->_state['databaseSettings']['database'], $this->_state['databaseSettings']['server']); // See if we have a specified character set and collation to use from the source site. $charset = null; $collate = null; if (isset($this->_state['dat']['db_charset'])) { $charset = $this->_state['dat']['db_charset']; } if (isset($this->_state['dat']['db_collate'])) { $collate = $this->_state['dat']['db_collate']; } if (null !== $charset || null !== $collate) { pb_backupbuddy::status('details', 'Setting charset to `' . $charset . '` and collate to `' . $collate . '` based on source site.'); $wpdb->set_charset($wpdb->dbh, $charset, $collate); } else { pb_backupbuddy::status('details', 'Charset nor collate are in DAT file. Using defaults for database connection.'); pb_backupbuddy::status('details', 'Charset in wpdb: ' . $wpdb->charset); } // Warn if mysql versions are incompatible; eg importing a mysql < 5.1 version into a server running 5.1+. global $wpdb; if (isset($this->_state['dat']['db_version'])) { $incomingVersion = $this->_state['dat']['db_version']; } $thisVersion = $wpdb->db_version(); pb_backupbuddy::status('details', 'Incoming mysql version: `' . $incomingVersion . '`. This server\'s mysql version: `' . $thisVersion . '`.'); if (version_compare($incomingVersion, '5.1.0', '<') && version_compare($thisVersion, '5.1.0', '>=')) { pb_backupbuddy::status('warning', 'Error #7001: This server\'s mysql version, `' . $thisVersion . '` may have SQL query incompatibilities with the backup mysql version `' . $incomingVersion . '`. This may result in #9010 errors due to syntax of TYPE= changing to ENGINE=. If none occur you may ignore this error.'); } return true; }
/** * connectDatabase() * * Initializes a connection to the mysql database. * REQUIRES: databaseSettings portion of state to be set. * * @return boolean True on success; else false. Success testing is very loose. */ function connectDatabase() { $this->_before(__FUNCTION__); global $wpdb; $wpdb = new wpdb($this->_state['databaseSettings']['username'], $this->_state['databaseSettings']['password'], $this->_state['databaseSettings']['database'], $this->_state['databaseSettings']['server']); // See if we have a specified character set and collation to use from the source site. $charset = null; $collate = null; if (isset($this->_state['dat']['db_charset'])) { $charset = $this->_state['dat']['db_charset']; } if (isset($this->_state['dat']['db_collate'])) { $collate = $this->_state['dat']['db_collate']; } if (null !== $charset || null !== $collate) { pb_backupbuddy::status('details', 'Setting charset to `' . $charset . '` and collate to `' . $collate . '` based on source site.'); $wpdb->set_charset($wpdb->dbh, $charset, $collate); } else { pb_backupbuddy::status('details', 'Charset nor collate are in DAT file. Using defaults for database connection.'); pb_backupbuddy::status('details', 'Charset in wpdb: ' . $wpdb->charset); } return true; }