ed0b6f040d
DB::$ssl now works even if DB::$ssl['key'] is NULL DB::$connect_flags allows access to flags passed to $mysqli->real_connect()
master
Sergey Tsalkov2022-03-24 16:58:37 +00:00
f82f0cc208
add another queryWalk() test case make sure we're using $is_buffered=false for queryWalk() like we're supposed to
Sergey Tsalkov2021-08-14 05:08:41 +00:00
7febdbd1f5
since queryRaw() is deprecated, it was a mistake to change its behavior return it to using $is_buffered=true, and restore queryRawUnbuf() for $is_buffered=false both queryRaw() and queryRawUnbuf() are deprecated, and it's recommended that you use queryWalk() instead
Sergey Tsalkov2021-08-14 05:02:27 +00:00
30f3d9454a
DB::debugMode() is now deprecated (but still works) recommended debug system will use $logfile to log SQL to a file
Sergey Tsalkov2021-06-23 21:23:20 +00:00
dc21f646af
DB::$logfile can be used to log all queries to either a resource or a file DB::debugMode() is now a shorthand for "DB::$logfile = STDOUT"
Sergey Tsalkov2021-06-23 03:05:22 +00:00
50fd6ed6d2
actually bring back deprecated methods, keep them for now to maintain backwards compatability
Sergey Tsalkov2021-06-23 01:24:16 +00:00
6487873c68
new hook-based system for inserting callbacks to run before and after a query debugMode() now works through the new system
Sergey Tsalkov2021-06-22 06:01:28 +00:00
bac5503d5a
PHP 8 complains when trying to access closed $mysqli object, not sure how to test this properly I don't think we need this test very much, anyway
Sergey Tsalkov2021-06-20 02:09:57 +00:00
42894b70ae
re-design query parser, new model has cleaner code and allows for %% escaping of % characters
Sergey Tsalkov2021-06-18 20:50:25 +00:00
20c7acd8a4
DB::parse() lets you generate queries without running them
Sergey Tsalkov2021-06-16 22:11:13 +00:00
e8c19ca2f8
clean up update() and delete(), both will now be compatible with named and numbered arguments resolves#54
v2.3.1
Sergey Tsalkov2020-07-10 01:13:31 +00:00
fa46824df1
get_class_vars() is broken in PHP 7.4 with opcache enabled, so stop using it looks like this fix actually works with PHP 5.2 after all, so not dropping backwards compatibility resolves#64Sergey Tsalkov2020-07-10 00:00:27 +00:00
e0660a9368
%? no longer handles arrays and hashes for security purposes those are moved into %l?, %ll?, %hc, %ha, %ho for different uses
Sergey Tsalkov2014-10-26 07:20:51 +00:00
0474a41a56
functions generally shouldn't keep going after a nonsql error
Sergey Tsalkov2014-10-26 03:11:14 +00:00
1fe2fdea16
when an instance of MeekroDB is created, its default settings will be those of the static instance
Sergey Tsalkov2014-10-26 01:57:20 +00:00
37fd169be3
minor bugfix: don't assume that the query results for queryFirstRow() or queryFirstList() will be an array (can also be a bool)
Sergey Tsalkov2014-06-14 00:27:38 +00:00
a0a2f702e2
bugfix: don't crash if nested transactions are enabled, and the first command issued is a start transaction
Sergey Tsalkov2014-03-31 01:50:10 -07:00
2707bcba7d
minor bugfix: don't drop identical query components in WhereClause (thanks Alexander!)
Sergey Tsalkov2013-12-06 11:17:54 -08:00
7b0da839de
add yet another test for this weird bug people are reporting tests *still* all pass, I can't reproduce the bug
Sergey Tsalkov2013-11-08 14:14:46 -08:00
1d51c2b674
add additional test case for a reported bug where '%s' in data is parsed as a query placeholder I can't reproduce the bug
Sergey Tsalkov2013-09-13 22:35:34 -07:00
253e803160
WhereClause can't have a __toString() method anymore because of how it's handled in combinatino with preparseQueryParams() now
Sergey Tsalkov2013-06-04 23:17:18 -07:00
e61d66fdf8
new DateTime() can be used with insert-like commands, and with %? as well
Sergey Tsalkov2013-06-02 19:45:44 -07:00
e9a55de0b4
DB::$usenull param can be used to decide whether insert()-like commands insert NULL or empty string for NULL
Sergey Tsalkov2013-06-02 19:22:14 -07:00
9e4cbc28c1
%t and %lt variables can be used to hold a datetime, which will be formatted to mysql standards
Sergey Tsalkov2013-06-02 19:10:28 -07:00
b6397a719c
merge freeResult and checkError functions back into queryHelper() since they're only used once
Sergey Tsalkov2013-06-02 17:45:04 -07:00
65ec35c591
modify WhereClause to hold off on evaluating parameters preparseQueryParams will now receive full WhereClause object and evaluate there
Sergey Tsalkov2013-06-02 15:46:46 -07:00
1d61a11098
add %? autodetection parameter, simplify functions such as insert() and update() to rely on it
Sergey Tsalkov2013-06-02 15:01:43 -07:00
ecd5fe190f
clean up query parsing code -- will be necessary for transition to prepared statement approach
Sergey Tsalkov2013-06-02 12:49:01 -07:00
e94f75fe2a
DB::disconnect() allows easy disconnecting from mysql
Sergey Tsalkov2013-03-19 12:02:47 -07:00
ce11e65070
successful insert/replace/update/delete will return true
Sergey Tsalkov2013-03-19 11:24:53 -07:00
6cb757797b
minor fix for calculated columns with fullcolumns
Sergey Tsalkov2013-03-19 11:20:20 -07:00
027e1529ba
create DB::queryFullColumns() which will supply full column names in the format table.column
Sergey Tsalkov2013-02-22 22:11:27 -08:00
e03ac71b45
more organization and simplification add queryAllLists() and queryRawUnbuf() methods
Sergey Tsalkov2013-02-22 21:28:41 -08:00
f89d70e49e
bugfix: can use null value for named or numbered parameters
Sergey Tsalkov2013-02-22 16:32:15 -08:00
6babe98b11
bugfix: free any extra results so CALL commands don't fail
Sergey Tsalkov2013-02-22 16:06:46 -08:00
039468f3a3
more cleanups and remove old and unused code
Sergey Tsalkov2013-02-22 14:58:44 -08:00