Commit Graph

451 Commits

Author SHA1 Message Date
Gary Pendergast
6e7fff514b WPDB: Allow queries to reference tables in the dbname.tablename format, and allow table names to contain any valid character, rather than just ASCII.
Props pento, willstedt for the initial patch.

See #32090.


Built from https://develop.svn.wordpress.org/trunk@32368


git-svn-id: http://core.svn.wordpress.org/trunk@32338 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-06 05:01:26 +00:00
Gary Pendergast
364886a5be WPDB: When checking that a string can be sent to MySQL, we shouldn't use mb_convert_encoding(), as it behaves differently to MySQL's character encoding conversion.
Props mdawaffe, pento, nbachiyski, jorbin, johnjamesjacoby, jeremyfelt.

See #32165.


Built from https://develop.svn.wordpress.org/trunk@32364


git-svn-id: http://core.svn.wordpress.org/trunk@32335 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-06 03:00:25 +00:00
Gary Pendergast
85d327d4bd In [32299], we should be using mb_strlen() for our string size checks.
Built from https://develop.svn.wordpress.org/trunk@32306


git-svn-id: http://core.svn.wordpress.org/trunk@32277 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-27 14:42:27 +00:00
Gary Pendergast
95d5fa28b4 WPDB: Sanity check that any strings being stored in the DB are not too long to store correctly.
Built from https://develop.svn.wordpress.org/trunk@32299


git-svn-id: http://core.svn.wordpress.org/trunk@32270 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-27 14:03:27 +00:00
Gary Pendergast
16bdf0ab2c WPDB: When sanity checking a string by sending it to MySQL for conversion checks, the incorrect data structure was being returned from wpdb::strip_invalid_text(), causing all write queries to fail for some character sets when the query contained non-ASCII characters.
See #32051.


Built from https://develop.svn.wordpress.org/trunk@32261


git-svn-id: http://core.svn.wordpress.org/trunk@32232 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-22 15:02:28 +00:00
Gary Pendergast
5775586646 WPDB: When deciding if a query needs extra sanity checking based on collation, we can quickly return if the query is entirely ASCII characters.
See #32029.


Built from https://develop.svn.wordpress.org/trunk@32233


git-svn-id: http://core.svn.wordpress.org/trunk@32207 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-21 05:24:26 +00:00
Gary Pendergast
6f38333ab2 WPDB: When deciding if a query needs extra sanity checking based on collation, we can quickly return if it's a query that will never return user data.
Fixes #32029.


Built from https://develop.svn.wordpress.org/trunk@32232


git-svn-id: http://core.svn.wordpress.org/trunk@32206 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-21 05:11:27 +00:00
Gary Pendergast
2bbd21f543 WPDB: When sanity checking read queries, there are some collations we can skip, for improved performance.
Props pento, nacin.

See #21212.


Built from https://develop.svn.wordpress.org/trunk@32162


git-svn-id: http://core.svn.wordpress.org/trunk@32137 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-20 04:46:25 +00:00
Dominik Schilling
64fc7294b6 Use HTTPS URLs for codex.wordpress.org.
see #27115.
Built from https://develop.svn.wordpress.org/trunk@32116


git-svn-id: http://core.svn.wordpress.org/trunk@32095 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-12 21:29:32 +00:00
Drew Jaynes
8f0e359618 Remove unnecessary inline @see tags from a variety of parameter and return descriptions in wp-includes/wp-db.php.
See #31888.

Built from https://develop.svn.wordpress.org/trunk@32050


git-svn-id: http://core.svn.wordpress.org/trunk@32029 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-05 17:17:27 +00:00
Drew Jaynes
777ad7647c Remove unnecessary inline @see tags from the wpdb::process_field_charsets() DocBlock.
See [30345]. See #31888.

Built from https://develop.svn.wordpress.org/trunk@32049


git-svn-id: http://core.svn.wordpress.org/trunk@32028 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-05 17:15:26 +00:00
Gary Pendergast
6a9d744b42 WPDB: When we check the character set of a column, and find that it's utf8mb4, we should also check that the current connection supports utf8mb4. It's possible that the environment may have changed since upgrading the DB, so we can fall back to utf8 when that happens.
Fixes #31771.


Built from https://develop.svn.wordpress.org/trunk@31947


git-svn-id: http://core.svn.wordpress.org/trunk@31926 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-01 02:22:31 +00:00
Gary Pendergast
2a8a5c963a WPDB: When we're checking to see if the MySQL client library supports utf8mb4, we need a separate check for mysqlnd versions, which using different version numbering to libmysqlclient.
Props MattyRob.

Fixes #31644.


Built from https://develop.svn.wordpress.org/trunk@31939


git-svn-id: http://core.svn.wordpress.org/trunk@31918 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-31 09:18:27 +00:00
Gary Pendergast
8c7ffba3b2 WPDB: HHVM doesn't support passing a DB link to mysqli_get_client_version(). While we usually pass a DB link to every ext/mysql and mysqli function call, we don't really need to do that here, as there's no way for the client library to change mid page load.
Another fun fact is that `mysql_get_client_version()` doesn't exist, but `mysql_get_client_info()` (along with `mysqli_get_client_info()') do. So, we're switching to them, in order to add a pleasing symmetry to the client version check.

Fixes #31644


Built from https://develop.svn.wordpress.org/trunk@31783


git-svn-id: http://core.svn.wordpress.org/trunk@31763 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-15 12:20:26 +00:00
Gary Pendergast
980668299c WPDB: When checking to see if we can use utf8mb4, we also need to make sure PHP's MySQL client library is capable of using utf8mb4.
See #21212


Built from https://develop.svn.wordpress.org/trunk@31391


git-svn-id: http://core.svn.wordpress.org/trunk@31372 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 22:28:28 +00:00
Gary Pendergast
04a0e21734 WPDB: The mysqli_query() call in wpdb::set_charset() had the parameters the wrong way around.
Built from https://develop.svn.wordpress.org/trunk@31374


git-svn-id: http://core.svn.wordpress.org/trunk@31355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 01:26:29 +00:00
Gary Pendergast
55742904c0 WPDB: When we're removing invalid text text from strings with multiple different character sets, wpdb::strip_invalid_text() wasn't correctly switching connection character sets.
Fixes #31262


Built from https://develop.svn.wordpress.org/trunk@31371


git-svn-id: http://core.svn.wordpress.org/trunk@31352 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 00:34:25 +00:00
Gary Pendergast
b2cf823105 WPDB: If a site is using the utf8 charset, and their version of MySQL supports utf8mb4, auto-upgrade them to utf8mb4.
This patch also resizes some indexes, to allow for the 767 byte index size limit in standard MySQL installs.

See #21212


Built from https://develop.svn.wordpress.org/trunk@31349


git-svn-id: http://core.svn.wordpress.org/trunk@31330 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-06 04:51:22 +00:00
Drew Jaynes
d7a51b3fc2 Add missing descriptions to the $blogid and $siteid property DocBlocks in the wpdb class.
Props ipm-frommen.
See #31008.

Built from https://develop.svn.wordpress.org/trunk@31294


git-svn-id: http://core.svn.wordpress.org/trunk@31275 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-29 11:35:22 +00:00
Gary Pendergast
c777f6a29c WPDB: When sanity checking a string, check that it's a string, first - PHP notices can occur if an array or object is handled like a string.
See #21212

Built from https://develop.svn.wordpress.org/trunk@31094


git-svn-id: http://core.svn.wordpress.org/trunk@31075 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 08:45:22 +00:00
Gary Pendergast
83a229084f WPDB: When wpdb::query() needs to sanity check a query string, make sure to run wpdb:flush() afterwards, to ensure the results from sanity check queries aren't mixed up with the results for the user query.
See #21212.

Fixes #30948.

Built from https://develop.svn.wordpress.org/trunk@31093


git-svn-id: http://core.svn.wordpress.org/trunk@31074 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 08:32:22 +00:00
Scott Taylor
60b0cd7943 The keyword elseif should be used instead of else if so that all control keywords look like single words.
This was a mess, is now standardized across the codebase, except for a few 3rd-party libs. 

See #30799.

Built from https://develop.svn.wordpress.org/trunk@31090


git-svn-id: http://core.svn.wordpress.org/trunk@31071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 07:05:25 +00:00
Gary Pendergast
0e806f1695 WPDB: To ensure we're not asking MySQL to read data using queries that it can't handle, make sure that we run all read queries through the character set sanity checks.
See #21212.


Built from https://develop.svn.wordpress.org/trunk@31051


git-svn-id: http://core.svn.wordpress.org/trunk@31032 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-05 04:40:22 +00:00
Gary Pendergast
9704ee2a5c WPDB Docs: Update the @since version from 4.1.0 to 4.2.0, for all the methods/members that were punted from 4.1.
See #21212.


Built from https://develop.svn.wordpress.org/trunk@31050


git-svn-id: http://core.svn.wordpress.org/trunk@31031 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-05 03:51:22 +00:00
Drew Jaynes
7c01a454ce Improve inline documentation for wpdb::has_cap().
Adds a changelog entry for the addition of the 'utf8mb4' feature, accepted values for `$db_cap`, and a return description.

Props kpdesign.
See #21212.

Built from https://develop.svn.wordpress.org/trunk@30768


git-svn-id: http://core.svn.wordpress.org/trunk@30758 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-07 05:23:22 +00:00
Drew Jaynes
23707b1ada Convert various uses of (optional) in core parameter descriptions to use the style prescribed in the inline documentation standards for PHP.
The style for marking parameters optional in inline PHP docs is: `@param type $var Optional. Description. Accepts. Default.`, where Accepts can be omitted on a case-by-case basis.

Props coffee2code.
Fixes #30591.

Built from https://develop.svn.wordpress.org/trunk@30753


git-svn-id: http://core.svn.wordpress.org/trunk@30743 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-06 21:24:45 +00:00
Gary Pendergast
de6d84935f WPDB: When looking up the character set for a table or column, make sure we send the table name to MySQL in the correct case, as MySQL can be configured with case sensitive table names.
Fixes #30538.

Built from https://develop.svn.wordpress.org/trunk@30699


git-svn-id: http://core.svn.wordpress.org/trunk@30689 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-02 03:00:23 +00:00
Gary Pendergast
a0c12d0c61 WPDB: Before fetching results, make sure we have a valid result resource to fetch them from.
Fixes #27982.

Built from https://develop.svn.wordpress.org/trunk@30677


git-svn-id: http://core.svn.wordpress.org/trunk@30667 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-01 00:03:22 +00:00
Scott Taylor
b63c789e88 Improve the @param docs for src/wp-includes/wp-db.php.
See #30224.

Built from https://develop.svn.wordpress.org/trunk@30664


git-svn-id: http://core.svn.wordpress.org/trunk@30654 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 21:55:23 +00:00
Drew Jaynes
9d1a4afda8 4.1 Docs Audit: Improve inline documentation for various wpdb methods.
#30469.

Built from https://develop.svn.wordpress.org/trunk@30624


git-svn-id: http://core.svn.wordpress.org/trunk@30614 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-28 12:34:25 +00:00
Gary Pendergast
8990b1c1fc WPDB: Remove the addition of STRICT_ALL_TABLES, added in [30400]. This proved to be incompatible with too many plugins, as well as being incompatible with MySQL 5.7.
See #21212.

Built from https://develop.svn.wordpress.org/trunk@30587


git-svn-id: http://core.svn.wordpress.org/trunk@30577 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-27 11:00:23 +00:00
Drew Jaynes
4b6abbaff4 Ensure inline code is markdown-escaped as such, HTML tags are removed from summaries, and that code snippets in descriptions are properly indented.
Affects DocBlocks for the following core elements:
* Backtick-escape code snippets in the description for `get_object_taxonomies()`
* Backtick-escape inline code in a markdown-formatted unordered list in the description for `get_taxonomy_labels()`
* Remove an HTML tag from the summary for the `Walker_Category_Checklist` class
* Remove an HTML tag from the summary for `wp_category_checklist()`, various formatting
* Remove an HTML tag from the summary for `wp_terms_checklist()`
* Backtick-escape an HTML tag in the description for `wp_popular_terms_checklist()`
* Remove HTML tags from the summaries for `page_template_dropdown()`, `parent_dropdown()`, and `wp_dropdown_roles()`
* Backtick-escape HTML tags in a parameter description for `add_settings_error()`
* Various formatting in the description and summary for `settings_errors()`
* Markdown-indent code snippets in the descriptions for `wpdb::prepare()`, `wpdb::insert()`, `wpdb::replace()`, `wpdb::update()`, and `wpdb::delete()`
* Backtick-escape an HTML tag in a parameter description for `login_header()`
* Remove HTML tags from the summaries for the `lostpassword_form` and `signup_header` hooks

Props rarst.
See #30473.

Built from https://develop.svn.wordpress.org/trunk@30546


git-svn-id: http://core.svn.wordpress.org/trunk@30535 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-24 06:31:21 +00:00
Gary Pendergast
f17d168a0f WPDB: Force STRICT_ALL_TABLES to be enabled as soon as we connect to the MySQL server.
This improves data integrity when inserting and updating rows in the database, particularly when trying to insert emoji into posts stored with character sets that don't support emoji.

See #21212.

Built from https://develop.svn.wordpress.org/trunk@30400


git-svn-id: http://core.svn.wordpress.org/trunk@30396 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-20 01:46:24 +00:00
Gary Pendergast
739a20a659 WPDB: When a db.php drop-in is being used, and it doesn't explicitly define itself as connecting to MySQL, skip the character set checks. This ensures that existing drop-ins won't accidentally run checks that they don't support.
See #21212.

Built from https://develop.svn.wordpress.org/trunk@30375


git-svn-id: http://core.svn.wordpress.org/trunk@30372 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-18 03:38:23 +00:00
Gary Pendergast
14bf4939e4 WPDB: When removing invalid characters from utf8 strings in older versions of PHP, the regex was too large to be compiled.
See #21212

Built from https://develop.svn.wordpress.org/trunk@30366


git-svn-id: http://core.svn.wordpress.org/trunk@30365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-17 11:58:22 +00:00
Gary Pendergast
ecc27d0b27 When creating a post containing emoji, the post can be saved incorrectly if MySQL isn't using a character set that supports emoji.
This change prevents the save from occurring, so it can be handled correctly in the UI.

See #21212.

Built from https://develop.svn.wordpress.org/trunk@30345


git-svn-id: http://core.svn.wordpress.org/trunk@30344 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-14 21:28:22 +00:00
Gary Pendergast
21467af4db wpdb: When flushing results on a mysqli connection, make sure that wpdb::$dbh is a valid mysqli connection handle.
Fixes a unit test failure introduced in [30297].

Fixes #28155.

Props soulseekah.


Built from https://develop.svn.wordpress.org/trunk@30299


git-svn-id: http://core.svn.wordpress.org/trunk@30298 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-11 02:17:28 +00:00
Gary Pendergast
0013150649 wpdb::flush() was not flushing results correctly when using mysqli.
This change also allows stored procedures or queries made with `mysqli_multi_query()` to be flushed.

Includes unit tests.

Fixes #28155.

Props soulseekah.

Built from https://develop.svn.wordpress.org/trunk@30297


git-svn-id: http://core.svn.wordpress.org/trunk@30296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-10 05:40:23 +00:00
Gary Pendergast
f572927353 WPDB's __get() function should perform strict comparisons against member names
Built from https://develop.svn.wordpress.org/trunk@30292


git-svn-id: http://core.svn.wordpress.org/trunk@30291 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-09 12:04:23 +00:00
Drew Jaynes
f8657d5890 Remove redundant and erroneous @uses tag from most core inline documentation.
Per our inline documentation standards, no further use of the `@uses` tag is recommended as used and used-by relationships can be derived through other means. This removes most uses of the tag in core documentation, with remaining tags to be converted to `@global` or `@see` as they apply.

Fixes #30191.

Built from https://develop.svn.wordpress.org/trunk@30105


git-svn-id: http://core.svn.wordpress.org/trunk@30105 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-30 01:05:24 +00:00
Sergey Biryukov
bf856e3a62 Translate some previously untranslated _doing_it_wrong() messages.
props georgestephanis.
fixes #25614.
Built from https://develop.svn.wordpress.org/trunk@29840


git-svn-id: http://core.svn.wordpress.org/trunk@29604 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-05 21:06:15 +00:00
Mark Jaquith
0d3b83551f Use HTTPS URLs for core.trac.wordpress.org
see #27115
Built from https://develop.svn.wordpress.org/trunk@29788


git-svn-id: http://core.svn.wordpress.org/trunk@29560 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-29 13:28:16 +00:00
Sergey Biryukov
740df917fa Remove unnecessary semicolon.
props ixkaito.
fixes #29784.
Built from https://develop.svn.wordpress.org/trunk@29784


git-svn-id: http://core.svn.wordpress.org/trunk@29556 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-29 10:30:16 +00:00
Andrew Nacin
53f1ba51e4 DB: Revert [28814] and require a WHERE for wpdb::update().
see #26106.

Built from https://develop.svn.wordpress.org/trunk@29664


git-svn-id: http://core.svn.wordpress.org/trunk@29438 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-02 04:56:15 +00:00
Drew Jaynes
3665b5a1a1 Add periods to short descriptions for magic methods added in [28501], [28521], and [28524].
See #22234 and #28885.

Built from https://develop.svn.wordpress.org/trunk@29165


git-svn-id: http://core.svn.wordpress.org/trunk@28949 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-14 01:12:14 +00:00
Drew Jaynes
c5a59037f1 Inline documentation cleanup for 4.0 audit.
Various improvements:
* Adds `@see` reference for `wp_list_comments()` in 'wp_list_comments_args' filter docs, added in [28285]
* Various phpDoc tweaks for the 'run_wptexturize' filter docs, added in [28715]
* Sentence and wrapping changes for `is_https_url()`, added in [28894]
* Documents the `$args` parameter for `wp_dropdown_languages()`, added in [29007]
* Adds a period to the parameter description for `_update_posts_count_on_delete()`, added in [28835]
* Documents a global in `is_customize_preview()`, added in [28999]
* phpDoc tweaks, adds an access modifier for `wpdb::esc_like()`, added in [28711]

See #28885.

Built from https://develop.svn.wordpress.org/trunk@29163


git-svn-id: http://core.svn.wordpress.org/trunk@28947 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-14 01:02:15 +00:00
Andrew Nacin
b35982cbff Simplify the setup-config.php UI flow and load process.
When no configuration file is detected, we now redirect to setup-config.php. This process now uses the WordPress bootstrap, rather than a set of fragile hacks.

fixes #28740.

Built from https://develop.svn.wordpress.org/trunk@28978


git-svn-id: http://core.svn.wordpress.org/trunk@28767 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-03 19:57:14 +00:00
Scott Taylor
3ebd519a3e In $wpdb->update(), prevent explosions when $where is empty.
Adds unit tests.

Props UmeshSingla, wonderboymusic.
Fixes #26106

Built from https://develop.svn.wordpress.org/trunk@28814


git-svn-id: http://core.svn.wordpress.org/trunk@28621 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-24 00:24:14 +00:00
Scott Taylor
82bdc78500 LIKE escape sanity:
* Deprecate `like_escape()`
* Add a method to `$wpdb`, `->esc_like()`, and add unit tests

`$wpdb::esc_like()` is not used yet. As such, many unit tests will throw `Unexpected deprecated notice for like_escape`. Subsequent commits will alleviate this.

Props miqrogroove.
See #10041.

Built from https://develop.svn.wordpress.org/trunk@28711


git-svn-id: http://core.svn.wordpress.org/trunk@28527 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-10 00:30:15 +00:00
Drew Jaynes
290b377a31 Mark the MYSQL_NEW_LINK constant as deprecated in 3.9+ as no equivalent to the $new_link parameter exists in mysqli_* functions.
Fixes #27933.

Built from https://develop.svn.wordpress.org/trunk@28657


git-svn-id: http://core.svn.wordpress.org/trunk@28475 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-04 05:00:15 +00:00
Scott Taylor
fd5e6b5f6b In wpdb, make some things explicitly public. Do not set anything to private. This would instantly blow up hyperdb in the wild.
See #27881, #22234.

Built from https://develop.svn.wordpress.org/trunk@28526


git-svn-id: http://core.svn.wordpress.org/trunk@28352 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-19 15:36:13 +00:00
Scott Taylor
361e3e1ee6 In wpdb, remove dead code:
* In `->tables()`, `break` is unreachable after `return`
* In `->query()`, `$return` is always set, so doesn't need an initial value of `0`
* In `->delete()`, `$bits` is unused

See #27882.

Built from https://develop.svn.wordpress.org/trunk@28339


git-svn-id: http://core.svn.wordpress.org/trunk@28167 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-07 03:56:14 +00:00
Drew Jaynes
a5366db845 Improve inline documentation for the wpdb::$show_errors property.
Note that SQL/DB errors are displayed by default if both WP_DEBUG and WP_DEBUG_DISPLAY evaluate to true.

Props ericlewis.
Fixes #16615.

Built from https://develop.svn.wordpress.org/trunk@28243


git-svn-id: http://core.svn.wordpress.org/trunk@28071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-02 12:19:15 +00:00
Andrew Nacin
1860b6a007 Rename USE_EXT_MYSQL to WP_USE_EXT_MYSQL. see #21663.
Built from https://develop.svn.wordpress.org/trunk@28022


git-svn-id: http://core.svn.wordpress.org/trunk@27852 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 22:27:15 +00:00
Drew Jaynes
b5ecc00b32 PHPDoc fixes for functionality in wp-includes/wp-db.php added in 3.9.
See #27700.

Built from https://develop.svn.wordpress.org/trunk@28016


git-svn-id: http://core.svn.wordpress.org/trunk@27846 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 22:02:15 +00:00
Andrew Nacin
10b8c92b1e wpdb: Don't pass a second argument to mysqli_fetch_field().
props pento.
fixes #27693.

Built from https://develop.svn.wordpress.org/trunk@28002


git-svn-id: http://core.svn.wordpress.org/trunk@27832 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 20:22:28 +00:00
Andrew Nacin
ac60fcb315 Database: Fall back from ext/mysqli to ext/mysql if the connection fails.
This allows us to avoid breaking a site that works under ext/mysql but is misconfigured for ext/mysqli.

props pento.
see #21663.

Built from https://develop.svn.wordpress.org/trunk@27935


git-svn-id: http://core.svn.wordpress.org/trunk@27765 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-03 21:58:16 +00:00
Andrew Nacin
34700cd7fb Database: Add $allow_bail argument to wpdb::check_connection() to match the connect method.
props DrProtocols, pento.
fixes #27240.

Built from https://develop.svn.wordpress.org/trunk@27925


git-svn-id: http://core.svn.wordpress.org/trunk@27755 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-03 04:06:14 +00:00
Sergey Biryukov
c099c5a031 Avoid a warning in wpdb::db_connect(). before_needle parameter of strstr() was added in PHP 5.3.
props klihelp, pento.
fixes #27277.
Built from https://develop.svn.wordpress.org/trunk@27503


git-svn-id: http://core.svn.wordpress.org/trunk@27346 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-11 19:27:15 +00:00
Andrew Nacin
291b1a8f83 Make OBJECT a case sensitive constant, for HHVM compatibility and general sanity.
Support `object` explicitly, and other forms using a fallback in wpdb.

fixes #27231.

Built from https://develop.svn.wordpress.org/trunk@27377


git-svn-id: http://core.svn.wordpress.org/trunk@27226 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-03 17:36:13 +00:00
Andrew Nacin
0c16c0477b Reference https://wordpress.org rather than http://wordpress.org in strings, links, comments, etc.
props Ipstenu, markjaquith.
see #27115.

Built from https://develop.svn.wordpress.org/trunk@27369


git-svn-id: http://core.svn.wordpress.org/trunk@27219 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-03 02:34:27 +00:00
Andrew Nacin
4d9bf200d7 When failing to reconnect to a server that has gone away, simply fail the query once we've passed template_redirect, rather than wp_die().
props pento.
see #5932.

Built from https://develop.svn.wordpress.org/trunk@27279


git-svn-id: http://core.svn.wordpress.org/trunk@27135 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-26 04:54:14 +00:00
Andrew Nacin
cb52ddbf08 Add a constant to disable mysqli for testing purposes. see #21663.
Built from https://develop.svn.wordpress.org/trunk@27278


git-svn-id: http://core.svn.wordpress.org/trunk@27134 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-26 04:20:14 +00:00
Andrew Nacin
4c9e7f81e1 wpdb: set dbh to null when the mysqli connection fails. see #21663.
Built from https://develop.svn.wordpress.org/trunk@27277


git-svn-id: http://core.svn.wordpress.org/trunk@27133 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-26 04:15:18 +00:00
Andrew Nacin
c51ce41c59 Use mysqli for WordPress development versions, regardless of PHP version, to increase testing footprint.
Allow the lack of ext/mysql to pass wp_check_php_mysql_versions().

see #21663.

Built from https://develop.svn.wordpress.org/trunk@27257


git-svn-id: http://core.svn.wordpress.org/trunk@27114 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 15:53:13 +00:00
Andrew Nacin
768db95280 Use ext/mysqli in PHP 5.5 or greater. Expect minor explosions.
props aaroncampbell, pento.
see #21663.

Built from https://develop.svn.wordpress.org/trunk@27250


git-svn-id: http://core.svn.wordpress.org/trunk@27107 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 00:40:13 +00:00
Andrew Nacin
1b9dda7d75 Declare $wpdb->base_prefix.
props DavidAnderson.
fixes #16762.

Built from https://develop.svn.wordpress.org/trunk@27249


git-svn-id: http://core.svn.wordpress.org/trunk@27106 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 00:30:13 +00:00
Drew Jaynes
aa8b462a95 Fixes for hooks documentation in wp-includes/wp-db.php.
See #26869, #25229 and [25284].

Built from https://develop.svn.wordpress.org/trunk@27147


git-svn-id: http://core.svn.wordpress.org/trunk@27014 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-09 20:51:13 +00:00
Andrew Nacin
43c7993c1a When the MySQL server has "gone away," attempt to reconnect and retry the query.
props pento.
see #5932.

Built from https://develop.svn.wordpress.org/trunk@27075


git-svn-id: http://core.svn.wordpress.org/trunk@26948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-02 22:07:12 +00:00
Andrew Nacin
17828876fa Add a comment for [27073] as someone will inevitably complain it is tricked by % in a string. see #25604.
Built from https://develop.svn.wordpress.org/trunk@27074


git-svn-id: http://core.svn.wordpress.org/trunk@26947 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-02 21:48:13 +00:00
Andrew Nacin
9c4a97c676 Throw an incorrect usage notice when the query argument of wpdb::prepare() does not include a placeholder.
props ounziw.
fixes #25604.

Built from https://develop.svn.wordpress.org/trunk@27073


git-svn-id: http://core.svn.wordpress.org/trunk@26946 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-02 21:47:11 +00:00
Andrew Nacin
9f250b2ef7 Ensure compatibility with MySQL 5.6 which has stricter SQL modes by default.
Disables NO_ZERO_DATE, ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, STRICT_ALL_TABLES, TRADITIONAL. Introduces wpdb::set_sql_mode() with an incompatible_sql_modes filter so a plugin can alter the set mode after the fact.

props pento.
fixes #26847.

Built from https://develop.svn.wordpress.org/trunk@27072


git-svn-id: http://core.svn.wordpress.org/trunk@26945 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-02 21:39:13 +00:00
Scott Taylor
678ef2b1e1 In wpdb::db_connect(), allow the loading of a custom database error template - this is already allowed in dead_db().
In `dead_db()`, move the call to `wp_load_translations_early()` before the inclusion of the `db-error.php` file to allow translation in both locations before the template is loaded.

Props sbruner, kovshenin.
Fixes #25703.


Built from https://develop.svn.wordpress.org/trunk@27056


git-svn-id: http://core.svn.wordpress.org/trunk@26929 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-29 05:28:12 +00:00
Scott Taylor
fc7a7b8972 When WP_DEBUG is set to true, suppress deprecated errors from firing when calling mysql_connect(), which is officially deprecated in PHP 5.5. We will remove this shameful code as soon as is humanly possible.
Props wonderboymusic. Extra love to tierra and nacin.
Fixes #26322.


Built from https://develop.svn.wordpress.org/trunk@26512


git-svn-id: http://core.svn.wordpress.org/trunk@26405 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-02 00:09:10 +00:00
Andrew Nacin
20b0153753 Document the 'query' filter in wp-db.
props natejacobs.
see #25229.

Built from https://develop.svn.wordpress.org/trunk@25284


git-svn-id: http://core.svn.wordpress.org/trunk@25248 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-06 17:07:09 +00:00
Andrew Nacin
f39e2c28ce Reset $wpdb->insert_id on a failed INSERT or REPLACE. See [24459] [24494].
git-svn-id: http://core.svn.wordpress.org/trunk@24872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-29 18:14:05 +00:00
Andrew Nacin
eb822723ae Check that we have a database connection in wpdb::_real_escape(). see #24773.
git-svn-id: http://core.svn.wordpress.org/trunk@24758 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-20 20:16:21 +00:00
Andrew Nacin
0cb7fbacc8 Ensure _deprecated_function() exists before calling it. wpdb currently does not have a full functions.php dependency, and this can break external inclusions. see #24774.
git-svn-id: http://core.svn.wordpress.org/trunk@24724 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-17 21:08:05 +00:00
Andrew Nacin
3b4f3dea29 Deprecate wpdb::escape() in favor of wpdb::prepare() and esc_sql(). fixes #24774.
git-svn-id: http://core.svn.wordpress.org/trunk@24718 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-16 17:44:42 +00:00
Andrew Nacin
dffd2b1bd9 Always use mysql_real_escape_string(), even when DB_CHARSET is not properly set. fixes #24773.
git-svn-id: http://core.svn.wordpress.org/trunk@24712 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-16 14:07:53 +00:00
Andrew Nacin
2ac8311b74 Partially revert [24459] and only flush insert_id on the next insert or replace query, as we had been doing before. (Yes, this is not how mysql_insert_id() works.)
git-svn-id: http://core.svn.wordpress.org/trunk@24494 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-21 18:22:26 +00:00
Andrew Nacin
9f10b33324 Have wpdb::flush() reset more variables.
git-svn-id: http://core.svn.wordpress.org/trunk@24459 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-21 01:32:54 +00:00
Sergey Biryukov
e65c4190f1 Remove extraneous function parameters in the wpdb class. props rlerdorf. see #24210.
git-svn-id: http://core.svn.wordpress.org/trunk@24121 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-29 00:31:56 +00:00
Sergey Biryukov
2bcf4b8802 Only show database errors if WP_DEBUG_DISPLAY is enabled. props cheeserolls, storkontheroof, crazycoders. fixes #22203.
git-svn-id: http://core.svn.wordpress.org/trunk@24027 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-18 09:51:02 +00:00
Andrew Nacin
e588812a49 Enforce a minimum of two arguments for wpdb::prepare(). The first argument is the query (or fragment thereof), which is required. Additional arguments are values to substitute into placeholders.
This will generate E_WARNINGs for insufficient arguments when prepare() is called with no additional arguments. This should discourage improper uses of prepare() under the guise of safely running a query.

props xknown. fixes #22262.



git-svn-id: http://core.svn.wordpress.org/trunk@22429 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-07 19:30:59 +00:00
Andrew Nacin
d85554c5f1 When replacing floats in wpdb::prepare(), avoid escaped placeholders (%%f). props SergeyBiryukov. fixes #19861.
git-svn-id: http://core.svn.wordpress.org/trunk@22304 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-25 20:52:50 +00:00
Ryan Boren
8ae2c51069 Correct phpdoc for wpdb::bail(). wp_die() is issued when show_errors is true, not false. Props SergeyBiryukov. fixes #22211
git-svn-id: http://core.svn.wordpress.org/trunk@22254 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-17 13:11:45 +00:00
Ryan Boren
77518e9c71 Objects no longer need to be explicitly passed by ref to call_user_func*() to be callable. Props wonderboymusic. fixes #21865
git-svn-id: http://core.svn.wordpress.org/trunk@22118 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-04 20:00:16 +00:00
Andrew Nacin
1508b46bb4 Call error_log() in wp-db without unnecessary conditionals. fixes #21103.
git-svn-id: http://core.svn.wordpress.org/trunk@21807 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-11 01:35:43 +00:00
Andrew Nacin
e225c12704 Basic support for the mysql_connect() new_link and client_flags arguments. props Otto42, fixes #19324.
git-svn-id: http://core.svn.wordpress.org/trunk@21609 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-24 17:44:21 +00:00
Ryan Boren
7342291b01 Update @since for various wpdb properties. Props SergeyBiryukov. fixes #21582
git-svn-id: http://core.svn.wordpress.org/trunk@21521 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-15 15:32:35 +00:00
Andrew Nacin
2b21b814a1 @since for wpdb's result property. props SergeyBiryukov. see #21533.
git-svn-id: http://core.svn.wordpress.org/trunk@21513 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-14 20:34:12 +00:00
Andrew Nacin
f965d758fc Add magic set, isset, and unset to wpdb. props pento.
These magic methods allow us to mark properties as protected or private, without breaking compatibility, as they were once accessible. The joys of PHP4.

fixes #18510.



git-svn-id: http://core.svn.wordpress.org/trunk@21512 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-14 20:26:04 +00:00
Andrew Nacin
c11a4c09e8 Eliminate error suppression for mysql_free_result() and only call it when the result is actually a resource. Depending on the query, mysql_query() can return a boolean rather than a resource, hence the original use of error suppression.
Fixes a warning introduced in [21472] when calling mysql_free_result() was moved to flush().

fixes #20838.



git-svn-id: http://core.svn.wordpress.org/trunk@21511 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-14 20:21:10 +00:00
nacin
f02bacd9f1 Declare, document, and protect $dbuser, $dbpassword, $dbname, $dbhost and $dbh in wpdb.
These properties, while protected, are still accessible thanks to the magic getter added in [21472].

props pento, nvartolomei, joelhardi. fixes #18510.



git-svn-id: http://core.svn.wordpress.org/trunk@21473 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-08 06:28:57 +00:00
nacin
1425762319 Lazy-load column info in wpdb. props pento. fixes #20838.
git-svn-id: http://core.svn.wordpress.org/trunk@21472 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-08 06:24:59 +00:00
nacin
4e5fd4de46 Introduce wpdb::get_charset_collate() to return the DEFAULT CHARACTER SET and COLLATE for use in table schemas.
props simonwheatley, pento. fixes #18451.



git-svn-id: http://core.svn.wordpress.org/trunk@21471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-08 06:13:48 +00:00
nacin
73c74cf8f7 Deprecate wpdb::supports_collation() in favor of wpdb::has_cap().
props hakre, pento. fixes #16757.



git-svn-id: http://core.svn.wordpress.org/trunk@21470 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-08 06:06:57 +00:00
nacin
3e8fe0e2e0 Correctly identify queries where a line break follows a keyword, rather than a space. props GeertDD, fixes #19467.
git-svn-id: http://core.svn.wordpress.org/trunk@21178 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-29 15:08:17 +00:00
nacin
9810e75d46 Handle localized floats in $wpdb->prepare(). props kurtpayne. fixes #19861.
git-svn-id: http://core.svn.wordpress.org/trunk@21161 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-28 19:57:31 +00:00
nacin
9501ff721d Escape special characters when outputting DB failures. see #13839.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20483 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-16 21:55:47 +00:00
duck_
a280584422 Correct @since and remove invalid code example in wpdb::delete() documentation. Props GaryJ, scribu. See #18948.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20292 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-27 12:00:39 +00:00
nacin
0730535015 Introduce $wpdb->delete(). props justindgivens, scribu. fixes #18948.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20287 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-24 15:24:31 +00:00
westi
cff0e266a4 Refactor WPDB::get_caller() into wp_debug_backtrace_summary() and improve the functionality to provide enhanced context and a standardised default pretty format. Fixes #19589
git-svn-id: http://svn.automattic.com/wordpress/trunk@19773 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-28 11:56:50 +00:00
nacin
81ed9a7563 Introduce wp_load_translations_early(), which can be used before the locale is properly loaded in order to translate early error strings. Internationalize setup-config.php -- translators no longer have a reason to modify this file. fixes #18180.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19760 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-26 20:34:27 +00:00
ryan
e3b46b25d3 Lose EOF ?>. Clean up EOF newlines. fixes #12307
git-svn-id: http://svn.automattic.com/wordpress/trunk@19712 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-08 17:01:11 +00:00
duck_
a95ad847db Stop quotes being incorrectly added to prepare placeholders in wpdb::_insert_replace_helper(). Fixes #19016.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19692 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-05 21:29:57 +00:00
nacin
6424c5b733 Ask for a float from microtime() for timer_start(), timer_stop(). Clarify docs. props solarissmoke, fixes #19157.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19611 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-12-20 21:36:53 +00:00
ryan
07ff8b216b Use one space, not two, after trailing punctuation. fixes #19537
git-svn-id: http://svn.automattic.com/wordpress/trunk@19593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-12-13 23:45:31 +00:00
nacin
e39245936f Remove reference to get_last_error(), it doesn't exist. props mitchoyoshitaka, fixes #19002.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19288 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-11-15 00:18:41 +00:00
ryan
31e3ff3fb1 Avoid 'Only variables should be passed by reference' warnings. Props SergeyBiryukov. see #18975
git-svn-id: http://svn.automattic.com/wordpress/trunk@19074 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-28 15:48:44 +00:00
nacin
6f9612f45c Introduce ->mysql to allow drop-ins to declare themselves as MySQL and therefore allow minimum version checks to still apply. fixes #18176.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19060 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-25 05:29:28 +00:00
ryan
67661f7181 Avoid 'Only variables should be passed by reference' warnings. Reverts [18110]. see #18975
git-svn-id: http://svn.automattic.com/wordpress/trunk@18998 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-18 20:44:39 +00:00
duck_
4a6513185a Documentation fixes. See #18560.
- Add missing parameters
 - Add missing @param data types
 - s/format_where/where_format/


git-svn-id: http://svn.automattic.com/wordpress/trunk@18753 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-22 12:02:31 +00:00
dd32
4752a8a1aa Add documentation for floats (%f) to wpdb::prepare() and friends. Props dllh. Fixes #18407
git-svn-id: http://svn.automattic.com/wordpress/trunk@18714 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-19 05:15:44 +00:00
duck_
2f51b9be0d Fix typos in documentation (wp-includes/[i-z]). See #18560.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18639 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-05 19:08:15 +00:00
dd32
e91e6de814 Clarify %d is an integer in wpdb documentation. See #18407
git-svn-id: http://svn.automattic.com/wordpress/trunk@18573 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-08-19 15:01:35 +00:00
ryan
08b6aa116e Sanitize sort_column and sort_order in get_pages(). Escape search_term in WP_User_Search. Cast blog_id to int in get_blog_prefix(). Props duck_
git-svn-id: http://svn.automattic.com/wordpress/trunk@18350 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-06-27 20:47:04 +00:00
nacin
30729cc791 Take that, PHP 5.0.5. Good riddens. see #14160.
git-svn-id: http://svn.automattic.com/wordpress/trunk@18110 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-06-01 22:03:36 +00:00
ryan
fce00c287b Properly handle return value of DDL statements. Props scribu, marcis20. fixes #11372
git-svn-id: http://svn.automattic.com/wordpress/trunk@18063 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-05-27 15:46:56 +00:00
ryan
e4157ae4cd Correct phpdoc for replacing/extending thewpdb class. Props johnbillion. fixes #17533
git-svn-id: http://svn.automattic.com/wordpress/trunk@18011 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-05-23 23:37:16 +00:00
ryan
b60c345536 Remove PHP4 constructors. Props hakre. see #16768
git-svn-id: http://svn.automattic.com/wordpress/trunk@17604 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-04-05 17:25:08 +00:00
ryan
c1da7bbb0b Don't die inside db_connect() if connection fails. Let dead_db() handle it. fixes #16640 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@17546 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-03-23 19:57:35 +00:00
nacin
edaea210a1 Remove dead globals. props mitchoyoshitaka. fixes #16571.
git-svn-id: http://svn.automattic.com/wordpress/trunk@17538 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-03-23 18:39:16 +00:00
ryan
f679a75b0c Don't die for failed db connects during install. Props westi. fixes #16640 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@17536 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-03-23 17:46:40 +00:00
ryan
a96f9d899f @since additions and updates. Props demetris. fixes #15867
git-svn-id: http://svn.automattic.com/wordpress/trunk@17079 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-20 12:49:18 +00:00
nacin
35b4860563 Don't improperly whitescreen on incorrect DB credentials during setup-config. Show error message with an opportunity to try again. fixes #15682.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16788 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-08 07:12:44 +00:00
ryan
3f72e340d6 Update since phpdoc. Props demetris. fixes #15445
git-svn-id: http://svn.automattic.com/wordpress/trunk@16660 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-12-01 19:24:38 +00:00
westi
00b232ea51 Revert [16320] and [16321] for now. Breaks things
git-svn-id: http://svn.automattic.com/wordpress/trunk@16336 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-12 22:44:16 +00:00
nacin
2ad9865886 Only mysql_free_result if we have a valid resource, and remove error suppression there. see #15402.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16321 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-12 10:40:43 +00:00
nacin
83fbd4e36b Memory usage and execution improvements in wpdb. Store and work with resources directly, rather than full copies of results. Plugins which incorrectly used wpdb->last_result (a private property) will need to shift to wpdb->get_results() with no \$query. Magic getter is introduced for back compat when using PHP5. props joelhardi, fixes #12257.
git-svn-id: http://svn.automattic.com/wordpress/trunk@16320 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-12 10:15:18 +00:00
nacin
14ccdbec33 Pruning shears.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15904 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-21 19:55:28 +00:00
nacin
5e1184aa57 Pinking shears.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-19 07:48:22 +00:00
westi
1bc8d5c12f Display mysql_connect errors when WP_DEBUG is enabled. Fixes #14654 props lloydbudd and hakre
Always die if we can't connect to the db no point in going any futher.

git-svn-id: http://svn.automattic.com/wordpress/trunk@15808 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-14 18:47:39 +00:00
nacin
9e97f25249 Always include wp-db.php. Prevents a conditional include and allows db dropins to cleanly extend the wpdb class. Move require_wp_db() to load.php for consistency with bootloader helpers. fixes #14508.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15638 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-20 19:13:47 +00:00
nacin
15bc341696 phpdoc, @since, whitespace. Also require an argument in wp_insert_post(). props duck_, see #14783.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15564 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-09-05 02:45:39 +00:00
ryan
b57bd51402 Remove WP_USE_MULTIPLE_DB. Introduce init_charset() and set_charset(). fixes #14672
git-svn-id: http://svn.automattic.com/wordpress/trunk@15537 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-08-26 18:34:18 +00:00
nacin
65c1243ce3 More curses on PHP 5.0.5. see #13757, fixes #14160. for trunk.
git-svn-id: http://svn.automattic.com/wordpress/trunk@15471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-07-25 07:35:59 +00:00
nbachiyski
22bc77ccee Do not include newline character in the beginning if the database error string
git-svn-id: http://svn.automattic.com/wordpress/trunk@15447 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-07-19 20:35:15 +00:00
dd32
a14d289755 Alot more tabs. Props jacobsantos & Viper007bond. See #14147
git-svn-id: http://svn.automattic.com/wordpress/trunk@15355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-30 00:05:18 +00:00
ryan
b0f05715e9 Make dbh parameter to select optional for plugin back compat. Don't pass by ref to preserve PHP 4 support. fixes #13914
git-svn-id: http://svn.automattic.com/wordpress/trunk@15266 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-06-16 19:28:01 +00:00
ryan
e7f50f9bfe Add docs for ->insert_id. Props scribu. fixes #13439
git-svn-id: http://svn.automattic.com/wordpress/trunk@14745 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-05-19 16:07:42 +00:00
nacin
1852eae49f Deprecate VHOST in favor of a boolean, SUBDOMAIN_INSTALL. Core will keep VHOST defined for plugins' sake, but you should only define SUBDOMAIN_INSTALL. Throws a notice if VHOST is defined, and a warning if they somehow conflict. Sunrise can still handle them. fixes #11796.
git-svn-id: http://svn.automattic.com/wordpress/trunk@14452 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-05-04 20:48:28 +00:00
nacin
e0eea8e857 Some wpdb cleanups.
git-svn-id: http://svn.automattic.com/wordpress/trunk@14058 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-04-10 12:39:25 +00:00
wpmuguru
8f5099a7ea have get_blog_prefix() default to the prefix of the current blog, see #12820
git-svn-id: http://svn.automattic.com/wordpress/trunk@13949 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-04-02 22:47:51 +00:00
markjaquith
58d47426cc More pedantry. "Setup" is not a verb. http://notaverb.com/setup
git-svn-id: http://svn.automattic.com/wordpress/trunk@13725 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-03-17 04:39:50 +00:00
westi
bb2fb8cb34 Ensure that wpdb::get_results() always returns an array when it should. Fixes #10607 props miqrogroove.
git-svn-id: http://svn.automattic.com/wordpress/trunk@13671 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-03-11 21:30:29 +00:00
nacin
779a3e76dd Fix notice. See #12362
git-svn-id: http://svn.automattic.com/wordpress/trunk@13578 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-03-03 23:07:23 +00:00
nacin
1a511e40e1 Add wpdb::replace() for replace queries. props AaronCampbell fixes #10864
git-svn-id: http://svn.automattic.com/wordpress/trunk@13454 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-27 15:45:09 +00:00
nacin
dbdc7a9e83 @since version numbers and other docs for wp-db. props hakre see #12362
git-svn-id: http://svn.automattic.com/wordpress/trunk@13426 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-26 06:14:26 +00:00
wpmuguru
e50b8fa348 database code cleanup, See #12362
git-svn-id: http://svn.automattic.com/wordpress/trunk@13387 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-24 21:30:13 +00:00
nacin
8bcc5969dc Spelling and grammar fun. Fixes #11875 props cnorris23
git-svn-id: http://svn.automattic.com/wordpress/trunk@13382 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-24 20:13:23 +00:00
nacin
f423a2ee5e More wpdb cleanups, see #12362
git-svn-id: http://svn.automattic.com/wordpress/trunk@13376 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-24 18:58:52 +00:00
ryan
efe8a967be Don't quote escaped strings. Props dd32. see #11608
git-svn-id: http://svn.automattic.com/wordpress/trunk@13357 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-24 05:30:34 +00:00
nacin
dd8dbfb6fe More wpdb cleanups, docs. see #11644 props hakre
git-svn-id: http://svn.automattic.com/wordpress/trunk@13343 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-23 22:04:29 +00:00
nacin
cc6e217d1d Fall back to $wpdb::blogid, not main blog id, in wpdb->tables(). See #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@13341 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-23 20:38:41 +00:00
nacin
7aa43e9c8b Ensure we have MS global tables defined during network install. See #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@13337 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-23 19:58:53 +00:00
nacin
16a3d5e0a1 Use sprintf() in hard-coded string. Use same comment and error code as other identical message. See #11644 props hakre
git-svn-id: http://svn.automattic.com/wordpress/trunk@13327 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-23 09:44:27 +00:00
nacin
39bcbf2755 Change inline docs to reflect [13324]
git-svn-id: http://svn.automattic.com/wordpress/trunk@13325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-23 09:08:50 +00:00
nacin
191e0df9d2 Improvements and fixes to wpdb::tables(). See #12083 see #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@13324 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-23 09:06:50 +00:00
nacin
9a11f30898 Docs and code convention cleanups. see #11644 props hakre
git-svn-id: http://svn.automattic.com/wordpress/trunk@13314 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-22 22:53:54 +00:00
nacin
f3bf4ec676 Fix wpdb::tables() prefix handling. Ensures PHP4 compat. See #12083
git-svn-id: http://svn.automattic.com/wordpress/trunk@13245 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-20 10:50:57 +00:00
dd32
679250491d Variable Cleanup, Unused variables, Typo'd variables, unused code blocks. Fixes #12299
git-svn-id: http://svn.automattic.com/wordpress/trunk@13242 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-20 02:01:46 +00:00
nacin
23918aa60d Introduce wpdb::tables() to fetch table names on a global or blog scope. Remove very old and long deprecated $table{table} globals, fixes #11614. See #12083
git-svn-id: http://svn.automattic.com/wordpress/trunk@13229 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-19 19:57:03 +00:00
nacin
84da5911aa Assume WP_DEBUG is defined in wpdb. Remove unnecessary constant() calls. Ensure DB_COLLATE defined as empty string doesn't override default Multisite collation. fixes #12041, see #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@13209 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-19 01:03:58 +00:00
nacin
bc6924cf05 Fix suppressed notice in wpdb::get_caller(). Props arena, fixes #11721
git-svn-id: http://svn.automattic.com/wordpress/trunk@13174 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-17 12:13:34 +00:00
nacin
02834b7206 Init array in wpdb:get_results() and get_col_info(). Props UnderWordPressure, miqrogroove, fixes #10607
git-svn-id: http://svn.automattic.com/wordpress/trunk@13161 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-15 10:00:39 +00:00
nacin
12800b27fa Add is_multisite() check to wpdb::get_blog_prefix() to fix get_blog_prefix($blog_id) call on a non-MS install. See #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@13121 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-13 19:57:43 +00:00
markjaquith
32d18323de Use $required_php_version. Props nacin. fixes #11637
git-svn-id: http://svn.automattic.com/wordpress/trunk@12939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-03 21:38:09 +00:00
wpmuguru
88a89ebe44 add WP_DEBUG define check in DB code, props dxjones, see #12041
git-svn-id: http://svn.automattic.com/wordpress/trunk@12922 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-02-01 22:22:21 +00:00
ryan
9c02a43b93 Typo fix. Props mentel_br. fixes #11921
git-svn-id: http://svn.automattic.com/wordpress/trunk@12763 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-19 17:28:48 +00:00
wpmuguru
fe7b362bd1 options network page, db variable change, See #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@12757 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-19 00:18:52 +00:00
ryan
f7d7bc2dd0 Use cap checks instead of multisite and super admin checks. Add some new caps. Merge cleanup. see #11644.
git-svn-id: http://svn.automattic.com/wordpress/trunk@12753 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-18 22:21:36 +00:00
ryan
6da55f7792 Trailing whitespace cleanup
git-svn-id: http://svn.automattic.com/wordpress/trunk@12733 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-15 22:11:12 +00:00
ryan
a581554d9a Use correct var name. see #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@12668 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-08 20:07:40 +00:00
wpmuguru
45cf3431f2 db class compatible with WP, MU & multi site - See #11644
git-svn-id: http://svn.automattic.com/wordpress/trunk@12667 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-08 19:26:00 +00:00
ryan
91c8fc90c0 Don't set charset if mysql version does not have the collation cap. Props miqrogroove. see #11666 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@12573 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-12-29 21:34:12 +00:00
westi
736315e0d5 Use new $required_mysql_version global in wp-db.php when checking if the mysql version is new enough. Fixes #11478 props nacin.
git-svn-id: http://svn.automattic.com/wordpress/trunk@12480 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-12-22 11:49:22 +00:00
ryan
bee735ee04 Bump MySQL requirement to 4.1.2 per previous discussions and announcements.
git-svn-id: http://svn.automattic.com/wordpress/trunk@12410 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-12-15 21:04:50 +00:00
ryan
60c67e593c Remove no longer needed DB has_cap() checks. Props filosofo. fixes #11443
git-svn-id: http://svn.automattic.com/wordpress/trunk@12409 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-12-15 21:01:57 +00:00
ryan
57a16afcb2 Bump the MySQL requirement to 4.1.0. Props Denis-de-Bernardy. see #11437
git-svn-id: http://svn.automattic.com/wordpress/trunk@12404 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-12-15 16:04:32 +00:00
westi
e7941d795e Ensure WP_DEBUG is always defined and simplify the checks on it. Fixes #11090 props nacin.
git-svn-id: http://svn.automattic.com/wordpress/trunk@12207 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-11-18 08:22:49 +00:00
westi
c67e70dd91 First pass commentmeta implementation. See #2659 props scribu.
git-svn-id: http://svn.automattic.com/wordpress/trunk@11943 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-09-17 20:17:33 +00:00
ryan
8e3808bce2 Remove trailing whitespace
git-svn-id: http://svn.automattic.com/wordpress/trunk@11930 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-09-14 14:03:32 +00:00
ryan
02c7c0e38e is_blog_installed() improvements and repair.php. see #10728
git-svn-id: http://svn.automattic.com/wordpress/trunk@11902 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-09-06 18:46:27 +00:00
ryan
82946b9484 Machine parseable db error codes. Props dd32. fixes #10293
git-svn-id: http://svn.automattic.com/wordpress/trunk@11865 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-08-21 17:00:53 +00:00
ryan
a61bc0ec8a Trailing whitespace cleanup
git-svn-id: http://svn.automattic.com/wordpress/trunk@11013 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-20 18:18:39 +00:00
ryan
cb0ad4f8ca Typo fix
git-svn-id: http://svn.automattic.com/wordpress/trunk@10934 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-14 22:34:51 +00:00
ryan
7c460ad4d3 phpdoc updates for wpdb. Props mdawaffe. fixes #9506
git-svn-id: http://svn.automattic.com/wordpress/trunk@10911 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-10 21:57:40 +00:00
ryan
658d22d054 Store field types in wpdb object. Props mdawaffe. see #7171
git-svn-id: http://svn.automattic.com/wordpress/trunk@10910 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-10 21:56:30 +00:00
ryan
c827471bf0 Backtick table and column names. Props mdawaffe. fixes #9505
git-svn-id: http://svn.automattic.com/wordpress/trunk@10907 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-10 21:37:19 +00:00
ryan
e8b6fe7347 Trim trailing whitespace
git-svn-id: http://svn.automattic.com/wordpress/trunk@10810 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-03-18 02:43:45 +00:00
ryan
a077c70d52 Notice fix. Props ionfish. fixes #9292
git-svn-id: http://svn.automattic.com/wordpress/trunk@10735 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-03-06 17:09:37 +00:00
ryan
cb712c991d Only list field types that are not strings. see #7171
git-svn-id: http://svn.automattic.com/wordpress/trunk@10726 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-03-06 01:06:00 +00:00
ryan
d6ee6062a6 Add some default field types. see #7171
git-svn-id: http://svn.automattic.com/wordpress/trunk@10725 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-03-06 00:50:19 +00:00
ryan
551c0c8af9 Add typecasting to wpdb::insert() and update(). Props filosofo. fixes #7171
git-svn-id: http://svn.automattic.com/wordpress/trunk@10724 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-03-05 23:47:02 +00:00
ryan
34d455832d Allow passing sustitution args to prepare() as an array. Makes building queries for prepare easier.
git-svn-id: http://svn.automattic.com/wordpress/trunk@10721 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-03-05 22:15:17 +00:00
ryan
76a82a5025 Use mysql_real_escape_string() only in prepare(), insert(), and update(). escape() uses addslashes only. Add array support to escape(). see #9189
git-svn-id: http://svn.automattic.com/wordpress/trunk@10604 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-02-20 19:05:12 +00:00
ryan
5c82bfb14c Use real escape in environments that support it. see #5455
git-svn-id: http://svn.automattic.com/wordpress/trunk@10597 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-02-19 19:01:57 +00:00
azaozz
01d2b3979b Improve error message, props simonwheatley, fixes #8397
git-svn-id: http://svn.automattic.com/wordpress/trunk@9935 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-11-28 04:40:20 +00:00