Repository files navigation

=======================================================================
Author: Justin Vincent - http://justinvincent.com/ezsql
Name: ezSQL
Desc: Class to make it very easy to deal with database connections.
License: FREE / Donation (LGPL - You may do what you like with ezSQL - no exceptions.)
=======================================================================
Follow me on twitter:
http://twitter.com/justinvincent
Check out my podcast TechZing where we talk about tech and tech startups:
http://techzinglive.com
=======================================================================
Change Log:
2.17 - Updates to ezSQL_postgresql (thx Stefanie Janine Stoelting)
2.16 - Added profiling functions to mySQL version & added fix to stop mySQL hanging on very long runnign scripts
2.15 - Fixed long standing bug with $db->rows_affected (thx Pere Pasqual)
2.14 - Added sybase connector by Muhammad Iyas
2.13 - Support for transations. See: http://stackoverflow.com/questions/8754215/ezsql-with-multiple-queries/8781798
2.12 - Added $db->get_set() - Creates a SET nvp sql string from an associative array (and escapes all values)
2.11 - Fixed $db->insert_id in postgress version
2.10 - Added isset($this->dbh) check to orcale version
2.09 - Fixed issues with mysql_real_escape_string not woirkign if no connection (Thanks to Nicolas Vannier)
2.08 - Re-added timer functions that seemed to have disappeared
2.07 - Used mysql_real_escape_string instead of mysql_escape_string
2.02 - Please note, this change log is no longer being used
please see change_log.htm for changes later than
2.02
2.01 - Added Disk Caching & Multiple DB connection support
2.00 - Re-factored ezSQL for Oracle, mySQL & SQLite
- DB Object is no longer initialized by default
(makes it easier to use multiple connections)
- Core ezSQL functions have been separated from DB
specific functions (makes it easier to add new databases)
- Errors are being piped through trigger_error
(using standard PHP error logging)
- Abstracted error messages (enabling future translation)
- Upgraded $db->query error return functionality
- Added $db->systdate function to abstract mySQL NOW()
and Oracle SYSDATE
Note: For other DB Types please use version 1.26
1.26 - Update (All)
- Fixed the pesky regular expression that tests for
an insert/update etc. Now it works even for the most
weirdly formatted queries! (thx dille)
1.25 - Update (mySQL/Oracle)
- Optimised $db->query function in both mySQL and Oracle versions.
Now the return value is working 'as expected' in ALL cases so you
are always safe using:
if ( $db->query("some query") )
No matter if an insert or a select.
In the case of insert/update the return value is based on the
number of rows affected (used to be insert id which is
not valid for an update)
In the case of select the return value is based on number of
rows returned.
Thx Bill Bruggemeyer :)
1.24 - Update (Docs)
- Now includes tutorial for using EZ Results with Smarty
templating engine - thx Steve Warwick
1.23 - Update (All PHP versions)
- Fixed the age old problem of returning false on
successful insert. $db->query()now returns the insert_id
if there was a successful insert or false if not. Sorry
that this took so long to fix!
Version Affected: mySQL/Porgress/ms-sql/sqlite
- Added new variable $db->debug_all
By default it is set to false but if you change it
to true. i.e.
include_once "ez_sql.php";
$db->debug_all = true;
Then it will print out each and every query and all
of the results that your script creates.
Very useful if you want to follow the entire logic
path of what ALL your queries are doing, but can't
be bothered to put $db->debug() statements all over
the place!
Update (Postgress SQL Version)
- Our old friend Tom De Bruyne as updated the postgress
version.
1) It now works without throwing errors (also thanks Geert Nijpels)
2) It now, in theory, returns $this->insert_id after an insert.
1.22 - Update (All PHP versions)
- Added new variable $db->num_queries it keeps track
of exactly how many 'real' (not cached) queries were
executed (using ezSQL) during the lifetime of one script.
Useful for debugging and optimizing.
- Put a white table behind the vardump output so that
it doesn't get lost on dark websites.
1.21 - Update (All Versions)
- Now 'replace' really does return an insert id..
(the 1.19 fix did not complete the job. Doh!)
1.20 - Update (New Version)
- C++ SQLite version added. Look at ez_demo.cpp.
(thanks Brennan Falkner)
1.19 - Update (All Versions)
- Fixed bug where any string containing the word 'insert',
'delete' or 'update' (where those words were not the actual
query) was causing unexpected results (thx Simon Willison).
The fix was to alter the regular expression to only match
queries containing those words at the beginning of the query
(with optional whitespace allowed before the words)
i.e.
THIS: preg_match("/$word /",strtolower($query))
TO THIS: preg_match("/^\\s*$word /",strtolower($query))
- Added new sql word 'replace' to the above match pattern
so that the $db->insert_id would be also be populated
on 'replace' queries (thx Rolf Dahl)
1.18 - Update (All Versions)
- Added new SQLite version (thanks Brennan Falkner)
- Fixed new bug that was introduced with bug fix 1.14
false was being returned on successful insert update etc.
now it is true
1.17 - Update (All Versions)
- New MS-SQL version added (thanks to Tom De Bruyne)
- Made the donation request 'less annoying' by making it more subtle!
1.16 - Update (All Versions)
- Added new function $db->escape()
Formats a string correctly to stop accidental
mal formed queries under all PHP conditions
1.15 - Bug fixes
- (Postgress)
$this->result = false; was in the wrong place.
Fixed! Thanks (Carlos Camiña García)
- (all versions)
Pesky get_var was still returning null instead of 0 in
certain cases. Bug fix of !== suggested by Osman
1.14 - Bug fixes
- (all versions)
Added !='' into the conditional return of get_var.
because if the result was the number 0 it was not returning anything
- (mySQL / Interbase / Postgress)
Added $this->result = false; if insert / update / delete
because it was causing mysql retrieval errors that no one
knew about due to the @ signs.
1.13 - Update (All Versions)
- Swapped 2nd and 3rd argument order.
- From.. get_row(query, int row offset, output type)
- To.... get_row(query, output type, int row offset)
1.12 - Update (All Versions)
- Tweaked the new hide/show error code
- Made sure the $this->show_errors was always initialised
- $db->query() function now returns false if there was an SQL error.
So that you can now do the following when you hide errors.
if ( $db->query("BAD SYNTAX") )
{
echo "Bad Query";
}
1.11 - Update (All Versions)
- added $db->hide_errors();
- added $db->show_errors();
- added global array $EZSQL_ERROR;
1.10 - Fix (mySQL)
- Insist that mysql_insert_id(); uses $this->dbh.
1.09 - Bug Fix
- Oracle version had the wrong number of parameters in the
$db = new db(etc,etc,etc,etc) part.
- Also added var $vardump_called; to all versions.
1.08 - Bug Fix
- Michael fixed the select function in PostgreSQL version.
1.07 - Bug Fix
- Added var $debug_called; to all versions.
1.06 - Update
- Fixed Bug In Oracle Version where an insert was
causing an error with OCIFetch
- New PostgreSQL Version Added by Michael Paesold (mpaesold@gmx.at)
1.05 - Bug Fix (mySQL)
- Removed repeated piece of code.
1.04 - Update
- $db->num_rows - variable added (All Versions)
- $db->rows_affected - variable added ( mySQL / Oracle )
- New InterBase/FireBase Version Added by LLCedar (llceder@wxs.nl)
1.03 - Update (All Versions)
Enhancements to vardump..
- Added display variable type
- If no value display No Value / False
- Added this readme file
1.02 - Update (mySQL version)
Added $db->insert_id to
1.01 - New Version
Oracle 8 Version as below
1.00 - Initial Release
Functions..
- $db->get_results - get multiple row result set from the database (or previously cached results)
- $db->get_row -- get one row from the database (or previously cached results)
- $db->get_col - get one column from query (or previously cached results) based on column offset
- $db->get_var -- get one variable, from one row, from the database (or previously cached results)
- $db->query -- send a query to the database (and if any results, cache them)
- $db->debug - print last sql query and returned results (if any)
- $db->vardump - print the contents and structure of any variable
- $db->select -- select a new database to work with
- $db->get_col_info - get information about one or all columns such as column name or type
- $db = new db -- Initiate new db object.

About

PHP class to make interacting with a database ridiculusly easy

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

=======================================================================
Author: Justin Vincent - http://justinvincent.com/ezsql
Name: ezSQL
Desc: Class to make it very easy to deal with database connections.
License: FREE / Donation (LGPL - You may do what you like with ezSQL - no exceptions.)
=======================================================================
Follow me on twitter:
http://twitter.com/justinvincent
Check out my podcast TechZing where we talk about tech and tech startups:
http://techzinglive.com
=======================================================================
Change Log:
2.17 - Updates to ezSQL_postgresql (thx Stefanie Janine Stoelting)
2.16 - Added profiling functions to mySQL version & added fix to stop mySQL hanging on very long runnign scripts
2.15 - Fixed long standing bug with $db->rows_affected (thx Pere Pasqual)
2.14 - Added sybase connector by Muhammad Iyas
2.13 - Support for transations. See: http://stackoverflow.com/questions/8754215/ezsql-with-multiple-queries/8781798
2.12 - Added $db->get_set() - Creates a SET nvp sql string from an associative array (and escapes all values)
2.11 - Fixed $db->insert_id in postgress version
2.10 - Added isset($this->dbh) check to orcale version
2.09 - Fixed issues with mysql_real_escape_string not woirkign if no connection (Thanks to Nicolas Vannier)
2.08 - Re-added timer functions that seemed to have disappeared
2.07 - Used mysql_real_escape_string instead of mysql_escape_string
2.02 - Please note, this change log is no longer being used
please see change_log.htm for changes later than
2.02
2.01 - Added Disk Caching & Multiple DB connection support
2.00 - Re-factored ezSQL for Oracle, mySQL & SQLite
- DB Object is no longer initialized by default
(makes it easier to use multiple connections)
- Core ezSQL functions have been separated from DB
specific functions (makes it easier to add new databases)
- Errors are being piped through trigger_error
(using standard PHP error logging)
- Abstracted error messages (enabling future translation)
- Upgraded $db->query error return functionality
- Added $db->systdate function to abstract mySQL NOW()
and Oracle SYSDATE
Note: For other DB Types please use version 1.26
1.26 - Update (All)
- Fixed the pesky regular expression that tests for
an insert/update etc. Now it works even for the most
weirdly formatted queries! (thx dille)
1.25 - Update (mySQL/Oracle)
- Optimised $db->query function in both mySQL and Oracle versions.
Now the return value is working 'as expected' in ALL cases so you
are always safe using:
if ( $db->query("some query") )
No matter if an insert or a select.
In the case of insert/update the return value is based on the
number of rows affected (used to be insert id which is
not valid for an update)
In the case of select the return value is based on number of
rows returned.
Thx Bill Bruggemeyer :)
1.24 - Update (Docs)
- Now includes tutorial for using EZ Results with Smarty
templating engine - thx Steve Warwick
1.23 - Update (All PHP versions)
- Fixed the age old problem of returning false on
successful insert. $db->query()now returns the insert_id
if there was a successful insert or false if not. Sorry
that this took so long to fix!
Version Affected: mySQL/Porgress/ms-sql/sqlite
- Added new variable $db->debug_all
By default it is set to false but if you change it
to true. i.e.
include_once "ez_sql.php";
$db->debug_all = true;
Then it will print out each and every query and all
of the results that your script creates.
Very useful if you want to follow the entire logic
path of what ALL your queries are doing, but can't
be bothered to put $db->debug() statements all over
the place!
Update (Postgress SQL Version)
- Our old friend Tom De Bruyne as updated the postgress
version.
1) It now works without throwing errors (also thanks Geert Nijpels)
2) It now, in theory, returns $this->insert_id after an insert.
1.22 - Update (All PHP versions)
- Added new variable $db->num_queries it keeps track
of exactly how many 'real' (not cached) queries were
executed (using ezSQL) during the lifetime of one script.
Useful for debugging and optimizing.
- Put a white table behind the vardump output so that
it doesn't get lost on dark websites.
1.21 - Update (All Versions)
- Now 'replace' really does return an insert id..
(the 1.19 fix did not complete the job. Doh!)
1.20 - Update (New Version)
- C++ SQLite version added. Look at ez_demo.cpp.
(thanks Brennan Falkner)
1.19 - Update (All Versions)
- Fixed bug where any string containing the word 'insert',
'delete' or 'update' (where those words were not the actual
query) was causing unexpected results (thx Simon Willison).
The fix was to alter the regular expression to only match
queries containing those words at the beginning of the query
(with optional whitespace allowed before the words)
i.e.
THIS: preg_match("/$word /",strtolower($query))
TO THIS: preg_match("/^\\s*$word /",strtolower($query))
- Added new sql word 'replace' to the above match pattern
so that the $db->insert_id would be also be populated
on 'replace' queries (thx Rolf Dahl)
1.18 - Update (All Versions)
- Added new SQLite version (thanks Brennan Falkner)
- Fixed new bug that was introduced with bug fix 1.14
false was being returned on successful insert update etc.
now it is true
1.17 - Update (All Versions)
- New MS-SQL version added (thanks to Tom De Bruyne)
- Made the donation request 'less annoying' by making it more subtle!
1.16 - Update (All Versions)
- Added new function $db->escape()
Formats a string correctly to stop accidental
mal formed queries under all PHP conditions
1.15 - Bug fixes
- (Postgress)
$this->result = false; was in the wrong place.
Fixed! Thanks (Carlos Camiña García)
- (all versions)
Pesky get_var was still returning null instead of 0 in
certain cases. Bug fix of !== suggested by Osman
1.14 - Bug fixes
- (all versions)
Added !='' into the conditional return of get_var.
because if the result was the number 0 it was not returning anything
- (mySQL / Interbase / Postgress)
Added $this->result = false; if insert / update / delete
because it was causing mysql retrieval errors that no one
knew about due to the @ signs.
1.13 - Update (All Versions)
- Swapped 2nd and 3rd argument order.
- From.. get_row(query, int row offset, output type)
- To.... get_row(query, output type, int row offset)
1.12 - Update (All Versions)
- Tweaked the new hide/show error code
- Made sure the $this->show_errors was always initialised
- $db->query() function now returns false if there was an SQL error.
So that you can now do the following when you hide errors.
if ( $db->query("BAD SYNTAX") )
{
echo "Bad Query";
}
1.11 - Update (All Versions)
- added $db->hide_errors();
- added $db->show_errors();
- added global array $EZSQL_ERROR;
1.10 - Fix (mySQL)
- Insist that mysql_insert_id(); uses $this->dbh.
1.09 - Bug Fix
- Oracle version had the wrong number of parameters in the
$db = new db(etc,etc,etc,etc) part.
- Also added var $vardump_called; to all versions.
1.08 - Bug Fix
- Michael fixed the select function in PostgreSQL version.
1.07 - Bug Fix
- Added var $debug_called; to all versions.
1.06 - Update
- Fixed Bug In Oracle Version where an insert was
causing an error with OCIFetch
- New PostgreSQL Version Added by Michael Paesold (mpaesold@gmx.at)
1.05 - Bug Fix (mySQL)
- Removed repeated piece of code.
1.04 - Update
- $db->num_rows - variable added (All Versions)
- $db->rows_affected - variable added ( mySQL / Oracle )
- New InterBase/FireBase Version Added by LLCedar (llceder@wxs.nl)
1.03 - Update (All Versions)
Enhancements to vardump..
- Added display variable type
- If no value display No Value / False
- Added this readme file
1.02 - Update (mySQL version)
Added $db->insert_id to
1.01 - New Version
Oracle 8 Version as below
1.00 - Initial Release
Functions..
- $db->get_results - get multiple row result set from the database (or previously cached results)
- $db->get_row -- get one row from the database (or previously cached results)
- $db->get_col - get one column from query (or previously cached results) based on column offset
- $db->get_var -- get one variable, from one row, from the database (or previously cached results)
- $db->query -- send a query to the database (and if any results, cache them)
- $db->debug - print last sql query and returned results (if any)
- $db->vardump - print the contents and structure of any variable
- $db->select -- select a new database to work with
- $db->get_col_info - get information about one or all columns such as column name or type
- $db = new db -- Initiate new db object.

About

PHP class to make interacting with a database ridiculusly easy

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

=======================================================================
Author: Justin Vincent - http://justinvincent.com/ezsql
Name: ezSQL
Desc: Class to make it very easy to deal with database connections.
License: FREE / Donation (LGPL - You may do what you like with ezSQL - no exceptions.)
=======================================================================
Follow me on twitter:
http://twitter.com/justinvincent
Check out my podcast TechZing where we talk about tech and tech startups:
http://techzinglive.com
=======================================================================
Change Log:
2.17 - Updates to ezSQL_postgresql (thx Stefanie Janine Stoelting)
2.16 - Added profiling functions to mySQL version & added fix to stop mySQL hanging on very long runnign scripts
2.15 - Fixed long standing bug with $db->rows_affected (thx Pere Pasqual)
2.14 - Added sybase connector by Muhammad Iyas
2.13 - Support for transations. See: http://stackoverflow.com/questions/8754215/ezsql-with-multiple-queries/8781798
2.12 - Added $db->get_set() - Creates a SET nvp sql string from an associative array (and escapes all values)
2.11 - Fixed $db->insert_id in postgress version
2.10 - Added isset($this->dbh) check to orcale version
2.09 - Fixed issues with mysql_real_escape_string not woirkign if no connection (Thanks to Nicolas Vannier)
2.08 - Re-added timer functions that seemed to have disappeared
2.07 - Used mysql_real_escape_string instead of mysql_escape_string
2.02 - Please note, this change log is no longer being used
please see change_log.htm for changes later than
2.02
2.01 - Added Disk Caching & Multiple DB connection support
2.00 - Re-factored ezSQL for Oracle, mySQL & SQLite
- DB Object is no longer initialized by default
(makes it easier to use multiple connections)
- Core ezSQL functions have been separated from DB
specific functions (makes it easier to add new databases)
- Errors are being piped through trigger_error
(using standard PHP error logging)
- Abstracted error messages (enabling future translation)
- Upgraded $db->query error return functionality
- Added $db->systdate function to abstract mySQL NOW()
and Oracle SYSDATE
Note: For other DB Types please use version 1.26
1.26 - Update (All)
- Fixed the pesky regular expression that tests for
an insert/update etc. Now it works even for the most
weirdly formatted queries! (thx dille)
1.25 - Update (mySQL/Oracle)
- Optimised $db->query function in both mySQL and Oracle versions.
Now the return value is working 'as expected' in ALL cases so you
are always safe using:
if ( $db->query("some query") )
No matter if an insert or a select.
In the case of insert/update the return value is based on the
number of rows affected (used to be insert id which is
not valid for an update)
In the case of select the return value is based on number of
rows returned.
Thx Bill Bruggemeyer :)
1.24 - Update (Docs)
- Now includes tutorial for using EZ Results with Smarty
templating engine - thx Steve Warwick
1.23 - Update (All PHP versions)
- Fixed the age old problem of returning false on
successful insert. $db->query()now returns the insert_id
if there was a successful insert or false if not. Sorry
that this took so long to fix!
Version Affected: mySQL/Porgress/ms-sql/sqlite
- Added new variable $db->debug_all
By default it is set to false but if you change it
to true. i.e.
include_once "ez_sql.php";
$db->debug_all = true;
Then it will print out each and every query and all
of the results that your script creates.
Very useful if you want to follow the entire logic
path of what ALL your queries are doing, but can't
be bothered to put $db->debug() statements all over
the place!
Update (Postgress SQL Version)
- Our old friend Tom De Bruyne as updated the postgress
version.
1) It now works without throwing errors (also thanks Geert Nijpels)
2) It now, in theory, returns $this->insert_id after an insert.
1.22 - Update (All PHP versions)
- Added new variable $db->num_queries it keeps track
of exactly how many 'real' (not cached) queries were
executed (using ezSQL) during the lifetime of one script.
Useful for debugging and optimizing.
- Put a white table behind the vardump output so that
it doesn't get lost on dark websites.
1.21 - Update (All Versions)
- Now 'replace' really does return an insert id..
(the 1.19 fix did not complete the job. Doh!)
1.20 - Update (New Version)
- C++ SQLite version added. Look at ez_demo.cpp.
(thanks Brennan Falkner)
1.19 - Update (All Versions)
- Fixed bug where any string containing the word 'insert',
'delete' or 'update' (where those words were not the actual
query) was causing unexpected results (thx Simon Willison).
The fix was to alter the regular expression to only match
queries containing those words at the beginning of the query
(with optional whitespace allowed before the words)
i.e.
THIS: preg_match("/$word /",strtolower($query))
TO THIS: preg_match("/^\\s*$word /",strtolower($query))
- Added new sql word 'replace' to the above match pattern
so that the $db->insert_id would be also be populated
on 'replace' queries (thx Rolf Dahl)
1.18 - Update (All Versions)
- Added new SQLite version (thanks Brennan Falkner)
- Fixed new bug that was introduced with bug fix 1.14
false was being returned on successful insert update etc.
now it is true
1.17 - Update (All Versions)
- New MS-SQL version added (thanks to Tom De Bruyne)
- Made the donation request 'less annoying' by making it more subtle!
1.16 - Update (All Versions)
- Added new function $db->escape()
Formats a string correctly to stop accidental
mal formed queries under all PHP conditions
1.15 - Bug fixes
- (Postgress)
$this->result = false; was in the wrong place.
Fixed! Thanks (Carlos Camiña García)
- (all versions)
Pesky get_var was still returning null instead of 0 in
certain cases. Bug fix of !== suggested by Osman
1.14 - Bug fixes
- (all versions)
Added !='' into the conditional return of get_var.
because if the result was the number 0 it was not returning anything
- (mySQL / Interbase / Postgress)
Added $this->result = false; if insert / update / delete
because it was causing mysql retrieval errors that no one
knew about due to the @ signs.
1.13 - Update (All Versions)
- Swapped 2nd and 3rd argument order.
- From.. get_row(query, int row offset, output type)
- To.... get_row(query, output type, int row offset)
1.12 - Update (All Versions)
- Tweaked the new hide/show error code
- Made sure the $this->show_errors was always initialised
- $db->query() function now returns false if there was an SQL error.
So that you can now do the following when you hide errors.
if ( $db->query("BAD SYNTAX") )
{
echo "Bad Query";
}
1.11 - Update (All Versions)
- added $db->hide_errors();
- added $db->show_errors();
- added global array $EZSQL_ERROR;
1.10 - Fix (mySQL)
- Insist that mysql_insert_id(); uses $this->dbh.
1.09 - Bug Fix
- Oracle version had the wrong number of parameters in the
$db = new db(etc,etc,etc,etc) part.
- Also added var $vardump_called; to all versions.
1.08 - Bug Fix
- Michael fixed the select function in PostgreSQL version.
1.07 - Bug Fix
- Added var $debug_called; to all versions.
1.06 - Update
- Fixed Bug In Oracle Version where an insert was
causing an error with OCIFetch
- New PostgreSQL Version Added by Michael Paesold (mpaesold@gmx.at)
1.05 - Bug Fix (mySQL)
- Removed repeated piece of code.
1.04 - Update
- $db->num_rows - variable added (All Versions)
- $db->rows_affected - variable added ( mySQL / Oracle )
- New InterBase/FireBase Version Added by LLCedar (llceder@wxs.nl)
1.03 - Update (All Versions)
Enhancements to vardump..
- Added display variable type
- If no value display No Value / False
- Added this readme file
1.02 - Update (mySQL version)
Added $db->insert_id to
1.01 - New Version
Oracle 8 Version as below
1.00 - Initial Release
Functions..
- $db->get_results - get multiple row result set from the database (or previously cached results)
- $db->get_row -- get one row from the database (or previously cached results)
- $db->get_col - get one column from query (or previously cached results) based on column offset
- $db->get_var -- get one variable, from one row, from the database (or previously cached results)
- $db->query -- send a query to the database (and if any results, cache them)
- $db->debug - print last sql query and returned results (if any)
- $db->vardump - print the contents and structure of any variable
- $db->select -- select a new database to work with
- $db->get_col_info - get information about one or all columns such as column name or type
- $db = new db -- Initiate new db object.

About

PHP class to make interacting with a database ridiculusly easy

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

=======================================================================
Author: Justin Vincent - http://justinvincent.com/ezsql
Name: ezSQL
Desc: Class to make it very easy to deal with database connections.
License: FREE / Donation (LGPL - You may do what you like with ezSQL - no exceptions.)
=======================================================================
Follow me on twitter:
http://twitter.com/justinvincent
Check out my podcast TechZing where we talk about tech and tech startups:
http://techzinglive.com
=======================================================================
Change Log:
2.17 - Updates to ezSQL_postgresql (thx Stefanie Janine Stoelting)
2.16 - Added profiling functions to mySQL version & added fix to stop mySQL hanging on very long runnign scripts
2.15 - Fixed long standing bug with $db->rows_affected (thx Pere Pasqual)
2.14 - Added sybase connector by Muhammad Iyas
2.13 - Support for transations. See: http://stackoverflow.com/questions/8754215/ezsql-with-multiple-queries/8781798
2.12 - Added $db->get_set() - Creates a SET nvp sql string from an associative array (and escapes all values)
2.11 - Fixed $db->insert_id in postgress version
2.10 - Added isset($this->dbh) check to orcale version
2.09 - Fixed issues with mysql_real_escape_string not woirkign if no connection (Thanks to Nicolas Vannier)
2.08 - Re-added timer functions that seemed to have disappeared
2.07 - Used mysql_real_escape_string instead of mysql_escape_string
2.02 - Please note, this change log is no longer being used
please see change_log.htm for changes later than
2.02
2.01 - Added Disk Caching & Multiple DB connection support
2.00 - Re-factored ezSQL for Oracle, mySQL & SQLite
- DB Object is no longer initialized by default
(makes it easier to use multiple connections)
- Core ezSQL functions have been separated from DB
specific functions (makes it easier to add new databases)
- Errors are being piped through trigger_error
(using standard PHP error logging)
- Abstracted error messages (enabling future translation)
- Upgraded $db->query error return functionality
- Added $db->systdate function to abstract mySQL NOW()
and Oracle SYSDATE
Note: For other DB Types please use version 1.26
1.26 - Update (All)
- Fixed the pesky regular expression that tests for
an insert/update etc. Now it works even for the most
weirdly formatted queries! (thx dille)
1.25 - Update (mySQL/Oracle)
- Optimised $db->query function in both mySQL and Oracle versions.
Now the return value is working 'as expected' in ALL cases so you
are always safe using:
if ( $db->query("some query") )
No matter if an insert or a select.
In the case of insert/update the return value is based on the
number of rows affected (used to be insert id which is
not valid for an update)
In the case of select the return value is based on number of
rows returned.
Thx Bill Bruggemeyer :)
1.24 - Update (Docs)
- Now includes tutorial for using EZ Results with Smarty
templating engine - thx Steve Warwick
1.23 - Update (All PHP versions)
- Fixed the age old problem of returning false on
successful insert. $db->query()now returns the insert_id
if there was a successful insert or false if not. Sorry
that this took so long to fix!
Version Affected: mySQL/Porgress/ms-sql/sqlite
- Added new variable $db->debug_all
By default it is set to false but if you change it
to true. i.e.
include_once "ez_sql.php";
$db->debug_all = true;
Then it will print out each and every query and all
of the results that your script creates.
Very useful if you want to follow the entire logic
path of what ALL your queries are doing, but can't
be bothered to put $db->debug() statements all over
the place!
Update (Postgress SQL Version)
- Our old friend Tom De Bruyne as updated the postgress
version.
1) It now works without throwing errors (also thanks Geert Nijpels)
2) It now, in theory, returns $this->insert_id after an insert.
1.22 - Update (All PHP versions)
- Added new variable $db->num_queries it keeps track
of exactly how many 'real' (not cached) queries were
executed (using ezSQL) during the lifetime of one script.
Useful for debugging and optimizing.
- Put a white table behind the vardump output so that
it doesn't get lost on dark websites.
1.21 - Update (All Versions)
- Now 'replace' really does return an insert id..
(the 1.19 fix did not complete the job. Doh!)
1.20 - Update (New Version)
- C++ SQLite version added. Look at ez_demo.cpp.
(thanks Brennan Falkner)
1.19 - Update (All Versions)
- Fixed bug where any string containing the word 'insert',
'delete' or 'update' (where those words were not the actual
query) was causing unexpected results (thx Simon Willison).
The fix was to alter the regular expression to only match
queries containing those words at the beginning of the query
(with optional whitespace allowed before the words)
i.e.
THIS: preg_match("/$word /",strtolower($query))
TO THIS: preg_match("/^\\s*$word /",strtolower($query))
- Added new sql word 'replace' to the above match pattern
so that the $db->insert_id would be also be populated
on 'replace' queries (thx Rolf Dahl)
1.18 - Update (All Versions)
- Added new SQLite version (thanks Brennan Falkner)
- Fixed new bug that was introduced with bug fix 1.14
false was being returned on successful insert update etc.
now it is true
1.17 - Update (All Versions)
- New MS-SQL version added (thanks to Tom De Bruyne)
- Made the donation request 'less annoying' by making it more subtle!
1.16 - Update (All Versions)
- Added new function $db->escape()
Formats a string correctly to stop accidental
mal formed queries under all PHP conditions
1.15 - Bug fixes
- (Postgress)
$this->result = false; was in the wrong place.
Fixed! Thanks (Carlos Camiña García)
- (all versions)
Pesky get_var was still returning null instead of 0 in
certain cases. Bug fix of !== suggested by Osman
1.14 - Bug fixes
- (all versions)
Added !='' into the conditional return of get_var.
because if the result was the number 0 it was not returning anything
- (mySQL / Interbase / Postgress)
Added $this->result = false; if insert / update / delete
because it was causing mysql retrieval errors that no one
knew about due to the @ signs.
1.13 - Update (All Versions)
- Swapped 2nd and 3rd argument order.
- From.. get_row(query, int row offset, output type)
- To.... get_row(query, output type, int row offset)
1.12 - Update (All Versions)
- Tweaked the new hide/show error code
- Made sure the $this->show_errors was always initialised
- $db->query() function now returns false if there was an SQL error.
So that you can now do the following when you hide errors.
if ( $db->query("BAD SYNTAX") )
{
echo "Bad Query";
}
1.11 - Update (All Versions)
- added $db->hide_errors();
- added $db->show_errors();
- added global array $EZSQL_ERROR;
1.10 - Fix (mySQL)
- Insist that mysql_insert_id(); uses $this->dbh.
1.09 - Bug Fix
- Oracle version had the wrong number of parameters in the
$db = new db(etc,etc,etc,etc) part.
- Also added var $vardump_called; to all versions.
1.08 - Bug Fix
- Michael fixed the select function in PostgreSQL version.
1.07 - Bug Fix
- Added var $debug_called; to all versions.
1.06 - Update
- Fixed Bug In Oracle Version where an insert was
causing an error with OCIFetch
- New PostgreSQL Version Added by Michael Paesold (mpaesold@gmx.at)
1.05 - Bug Fix (mySQL)
- Removed repeated piece of code.
1.04 - Update
- $db->num_rows - variable added (All Versions)
- $db->rows_affected - variable added ( mySQL / Oracle )
- New InterBase/FireBase Version Added by LLCedar (llceder@wxs.nl)
1.03 - Update (All Versions)
Enhancements to vardump..
- Added display variable type
- If no value display No Value / False
- Added this readme file
1.02 - Update (mySQL version)
Added $db->insert_id to
1.01 - New Version
Oracle 8 Version as below
1.00 - Initial Release
Functions..
- $db->get_results - get multiple row result set from the database (or previously cached results)
- $db->get_row -- get one row from the database (or previously cached results)
- $db->get_col - get one column from query (or previously cached results) based on column offset
- $db->get_var -- get one variable, from one row, from the database (or previously cached results)
- $db->query -- send a query to the database (and if any results, cache them)
- $db->debug - print last sql query and returned results (if any)
- $db->vardump - print the contents and structure of any variable
- $db->select -- select a new database to work with
- $db->get_col_info - get information about one or all columns such as column name or type
- $db = new db -- Initiate new db object.

About

PHP class to make interacting with a database ridiculusly easy

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

=======================================================================
Author: Justin Vincent - http://justinvincent.com/ezsql
Name: ezSQL
Desc: Class to make it very easy to deal with database connections.
License: FREE / Donation (LGPL - You may do what you like with ezSQL - no exceptions.)
=======================================================================
Follow me on twitter:
http://twitter.com/justinvincent
Check out my podcast TechZing where we talk about tech and tech startups:
http://techzinglive.com
=======================================================================
Change Log:
2.17 - Updates to ezSQL_postgresql (thx Stefanie Janine Stoelting)
2.16 - Added profiling functions to mySQL version & added fix to stop mySQL hanging on very long runnign scripts
2.15 - Fixed long standing bug with $db->rows_affected (thx Pere Pasqual)
2.14 - Added sybase connector by Muhammad Iyas
2.13 - Support for transations. See: http://stackoverflow.com/questions/8754215/ezsql-with-multiple-queries/8781798
2.12 - Added $db->get_set() - Creates a SET nvp sql string from an associative array (and escapes all values)
2.11 - Fixed $db->insert_id in postgress version
2.10 - Added isset($this->dbh) check to orcale version
2.09 - Fixed issues with mysql_real_escape_string not woirkign if no connection (Thanks to Nicolas Vannier)
2.08 - Re-added timer functions that seemed to have disappeared
2.07 - Used mysql_real_escape_string instead of mysql_escape_string
2.02 - Please note, this change log is no longer being used
please see change_log.htm for changes later than
2.02
2.01 - Added Disk Caching & Multiple DB connection support
2.00 - Re-factored ezSQL for Oracle, mySQL & SQLite
- DB Object is no longer initialized by default
(makes it easier to use multiple connections)
- Core ezSQL functions have been separated from DB
specific functions (makes it easier to add new databases)
- Errors are being piped through trigger_error
(using standard PHP error logging)
- Abstracted error messages (enabling future translation)
- Upgraded $db->query error return functionality
- Added $db->systdate function to abstract mySQL NOW()
and Oracle SYSDATE
Note: For other DB Types please use version 1.26
1.26 - Update (All)
- Fixed the pesky regular expression that tests for
an insert/update etc. Now it works even for the most
weirdly formatted queries! (thx dille)
1.25 - Update (mySQL/Oracle)
- Optimised $db->query function in both mySQL and Oracle versions.
Now the return value is working 'as expected' in ALL cases so you
are always safe using:
if ( $db->query("some query") )
No matter if an insert or a select.
In the case of insert/update the return value is based on the
number of rows affected (used to be insert id which is
not valid for an update)
In the case of select the return value is based on number of
rows returned.
Thx Bill Bruggemeyer :)
1.24 - Update (Docs)
- Now includes tutorial for using EZ Results with Smarty
templating engine - thx Steve Warwick
1.23 - Update (All PHP versions)
- Fixed the age old problem of returning false on
successful insert. $db->query()now returns the insert_id
if there was a successful insert or false if not. Sorry
that this took so long to fix!
Version Affected: mySQL/Porgress/ms-sql/sqlite
- Added new variable $db->debug_all
By default it is set to false but if you change it
to true. i.e.
include_once "ez_sql.php";
$db->debug_all = true;
Then it will print out each and every query and all
of the results that your script creates.
Very useful if you want to follow the entire logic
path of what ALL your queries are doing, but can't
be bothered to put $db->debug() statements all over
the place!
Update (Postgress SQL Version)
- Our old friend Tom De Bruyne as updated the postgress
version.
1) It now works without throwing errors (also thanks Geert Nijpels)
2) It now, in theory, returns $this->insert_id after an insert.
1.22 - Update (All PHP versions)
- Added new variable $db->num_queries it keeps track
of exactly how many 'real' (not cached) queries were
executed (using ezSQL) during the lifetime of one script.
Useful for debugging and optimizing.
- Put a white table behind the vardump output so that
it doesn't get lost on dark websites.
1.21 - Update (All Versions)
- Now 'replace' really does return an insert id..
(the 1.19 fix did not complete the job. Doh!)
1.20 - Update (New Version)
- C++ SQLite version added. Look at ez_demo.cpp.
(thanks Brennan Falkner)
1.19 - Update (All Versions)
- Fixed bug where any string containing the word 'insert',
'delete' or 'update' (where those words were not the actual
query) was causing unexpected results (thx Simon Willison).
The fix was to alter the regular expression to only match
queries containing those words at the beginning of the query
(with optional whitespace allowed before the words)
i.e.
THIS: preg_match("/$word /",strtolower($query))
TO THIS: preg_match("/^\\s*$word /",strtolower($query))
- Added new sql word 'replace' to the above match pattern
so that the $db->insert_id would be also be populated
on 'replace' queries (thx Rolf Dahl)
1.18 - Update (All Versions)
- Added new SQLite version (thanks Brennan Falkner)
- Fixed new bug that was introduced with bug fix 1.14
false was being returned on successful insert update etc.
now it is true
1.17 - Update (All Versions)
- New MS-SQL version added (thanks to Tom De Bruyne)
- Made the donation request 'less annoying' by making it more subtle!
1.16 - Update (All Versions)
- Added new function $db->escape()
Formats a string correctly to stop accidental
mal formed queries under all PHP conditions
1.15 - Bug fixes
- (Postgress)
$this->result = false; was in the wrong place.
Fixed! Thanks (Carlos Camiña García)
- (all versions)
Pesky get_var was still returning null instead of 0 in
certain cases. Bug fix of !== suggested by Osman
1.14 - Bug fixes
- (all versions)
Added !='' into the conditional return of get_var.
because if the result was the number 0 it was not returning anything
- (mySQL / Interbase / Postgress)
Added $this->result = false; if insert / update / delete
because it was causing mysql retrieval errors that no one
knew about due to the @ signs.
1.13 - Update (All Versions)
- Swapped 2nd and 3rd argument order.
- From.. get_row(query, int row offset, output type)
- To.... get_row(query, output type, int row offset)
1.12 - Update (All Versions)
- Tweaked the new hide/show error code
- Made sure the $this->show_errors was always initialised
- $db->query() function now returns false if there was an SQL error.
So that you can now do the following when you hide errors.
if ( $db->query("BAD SYNTAX") )
{
echo "Bad Query";
}
1.11 - Update (All Versions)
- added $db->hide_errors();
- added $db->show_errors();
- added global array $EZSQL_ERROR;
1.10 - Fix (mySQL)
- Insist that mysql_insert_id(); uses $this->dbh.
1.09 - Bug Fix
- Oracle version had the wrong number of parameters in the
$db = new db(etc,etc,etc,etc) part.
- Also added var $vardump_called; to all versions.
1.08 - Bug Fix
- Michael fixed the select function in PostgreSQL version.
1.07 - Bug Fix
- Added var $debug_called; to all versions.
1.06 - Update
- Fixed Bug In Oracle Version where an insert was
causing an error with OCIFetch
- New PostgreSQL Version Added by Michael Paesold (mpaesold@gmx.at)
1.05 - Bug Fix (mySQL)
- Removed repeated piece of code.
1.04 - Update
- $db->num_rows - variable added (All Versions)
- $db->rows_affected - variable added ( mySQL / Oracle )
- New InterBase/FireBase Version Added by LLCedar (llceder@wxs.nl)
1.03 - Update (All Versions)
Enhancements to vardump..
- Added display variable type
- If no value display No Value / False
- Added this readme file
1.02 - Update (mySQL version)
Added $db->insert_id to
1.01 - New Version
Oracle 8 Version as below
1.00 - Initial Release
Functions..
- $db->get_results - get multiple row result set from the database (or previously cached results)
- $db->get_row -- get one row from the database (or previously cached results)
- $db->get_col - get one column from query (or previously cached results) based on column offset
- $db->get_var -- get one variable, from one row, from the database (or previously cached results)
- $db->query -- send a query to the database (and if any results, cache them)
- $db->debug - print last sql query and returned results (if any)
- $db->vardump - print the contents and structure of any variable
- $db->select -- select a new database to work with
- $db->get_col_info - get information about one or all columns such as column name or type
- $db = new db -- Initiate new db object.

About

PHP class to make interacting with a database ridiculusly easy

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

=======================================================================
Author: Justin Vincent - http://justinvincent.com/ezsql
Name: ezSQL
Desc: Class to make it very easy to deal with database connections.
License: FREE / Donation (LGPL - You may do what you like with ezSQL - no exceptions.)
=======================================================================
Follow me on twitter:
http://twitter.com/justinvincent
Check out my podcast TechZing where we talk about tech and tech startups:
http://techzinglive.com
=======================================================================
Change Log:
2.17 - Updates to ezSQL_postgresql (thx Stefanie Janine Stoelting)
2.16 - Added profiling functions to mySQL version & added fix to stop mySQL hanging on very long runnign scripts
2.15 - Fixed long standing bug with $db->rows_affected (thx Pere Pasqual)
2.14 - Added sybase connector by Muhammad Iyas
2.13 - Support for transations. See: http://stackoverflow.com/questions/8754215/ezsql-with-multiple-queries/8781798
2.12 - Added $db->get_set() - Creates a SET nvp sql string from an associative array (and escapes all values)
2.11 - Fixed $db->insert_id in postgress version
2.10 - Added isset($this->dbh) check to orcale version
2.09 - Fixed issues with mysql_real_escape_string not woirkign if no connection (Thanks to Nicolas Vannier)
2.08 - Re-added timer functions that seemed to have disappeared
2.07 - Used mysql_real_escape_string instead of mysql_escape_string
2.02 - Please note, this change log is no longer being used
please see change_log.htm for changes later than
2.02
2.01 - Added Disk Caching & Multiple DB connection support
2.00 - Re-factored ezSQL for Oracle, mySQL & SQLite
- DB Object is no longer initialized by default
(makes it easier to use multiple connections)
- Core ezSQL functions have been separated from DB
specific functions (makes it easier to add new databases)
- Errors are being piped through trigger_error
(using standard PHP error logging)
- Abstracted error messages (enabling future translation)
- Upgraded $db->query error return functionality
- Added $db->systdate function to abstract mySQL NOW()
and Oracle SYSDATE
Note: For other DB Types please use version 1.26
1.26 - Update (All)
- Fixed the pesky regular expression that tests for
an insert/update etc. Now it works even for the most
weirdly formatted queries! (thx dille)
1.25 - Update (mySQL/Oracle)
- Optimised $db->query function in both mySQL and Oracle versions.
Now the return value is working 'as expected' in ALL cases so you
are always safe using:
if ( $db->query("some query") )
No matter if an insert or a select.
In the case of insert/update the return value is based on the
number of rows affected (used to be insert id which is
not valid for an update)
In the case of select the return value is based on number of
rows returned.
Thx Bill Bruggemeyer :)
1.24 - Update (Docs)
- Now includes tutorial for using EZ Results with Smarty
templating engine - thx Steve Warwick
1.23 - Update (All PHP versions)
- Fixed the age old problem of returning false on
successful insert. $db->query()now returns the insert_id
if there was a successful insert or false if not. Sorry
that this took so long to fix!
Version Affected: mySQL/Porgress/ms-sql/sqlite
- Added new variable $db->debug_all
By default it is set to false but if you change it
to true. i.e.
include_once "ez_sql.php";
$db->debug_all = true;
Then it will print out each and every query and all
of the results that your script creates.
Very useful if you want to follow the entire logic
path of what ALL your queries are doing, but can't
be bothered to put $db->debug() statements all over
the place!
Update (Postgress SQL Version)
- Our old friend Tom De Bruyne as updated the postgress
version.
1) It now works without throwing errors (also thanks Geert Nijpels)
2) It now, in theory, returns $this->insert_id after an insert.
1.22 - Update (All PHP versions)
- Added new variable $db->num_queries it keeps track
of exactly how many 'real' (not cached) queries were
executed (using ezSQL) during the lifetime of one script.
Useful for debugging and optimizing.
- Put a white table behind the vardump output so that
it doesn't get lost on dark websites.
1.21 - Update (All Versions)
- Now 'replace' really does return an insert id..
(the 1.19 fix did not complete the job. Doh!)
1.20 - Update (New Version)
- C++ SQLite version added. Look at ez_demo.cpp.
(thanks Brennan Falkner)
1.19 - Update (All Versions)
- Fixed bug where any string containing the word 'insert',
'delete' or 'update' (where those words were not the actual
query) was causing unexpected results (thx Simon Willison).
The fix was to alter the regular expression to only match
queries containing those words at the beginning of the query
(with optional whitespace allowed before the words)
i.e.
THIS: preg_match("/$word /",strtolower($query))
TO THIS: preg_match("/^\\s*$word /",strtolower($query))
- Added new sql word 'replace' to the above match pattern
so that the $db->insert_id would be also be populated
on 'replace' queries (thx Rolf Dahl)
1.18 - Update (All Versions)
- Added new SQLite version (thanks Brennan Falkner)
- Fixed new bug that was introduced with bug fix 1.14
false was being returned on successful insert update etc.
now it is true
1.17 - Update (All Versions)
- New MS-SQL version added (thanks to Tom De Bruyne)
- Made the donation request 'less annoying' by making it more subtle!
1.16 - Update (All Versions)
- Added new function $db->escape()
Formats a string correctly to stop accidental
mal formed queries under all PHP conditions
1.15 - Bug fixes
- (Postgress)
$this->result = false; was in the wrong place.
Fixed! Thanks (Carlos Camiña García)
- (all versions)
Pesky get_var was still returning null instead of 0 in
certain cases. Bug fix of !== suggested by Osman
1.14 - Bug fixes
- (all versions)
Added !='' into the conditional return of get_var.
because if the result was the number 0 it was not returning anything
- (mySQL / Interbase / Postgress)
Added $this->result = false; if insert / update / delete
because it was causing mysql retrieval errors that no one
knew about due to the @ signs.
1.13 - Update (All Versions)
- Swapped 2nd and 3rd argument order.
- From.. get_row(query, int row offset, output type)
- To.... get_row(query, output type, int row offset)
1.12 - Update (All Versions)
- Tweaked the new hide/show error code
- Made sure the $this->show_errors was always initialised
- $db->query() function now returns false if there was an SQL error.
So that you can now do the following when you hide errors.
if ( $db->query("BAD SYNTAX") )
{
echo "Bad Query";
}
1.11 - Update (All Versions)
- added $db->hide_errors();
- added $db->show_errors();
- added global array $EZSQL_ERROR;
1.10 - Fix (mySQL)
- Insist that mysql_insert_id(); uses $this->dbh.
1.09 - Bug Fix
- Oracle version had the wrong number of parameters in the
$db = new db(etc,etc,etc,etc) part.
- Also added var $vardump_called; to all versions.
1.08 - Bug Fix
- Michael fixed the select function in PostgreSQL version.
1.07 - Bug Fix
- Added var $debug_called; to all versions.
1.06 - Update
- Fixed Bug In Oracle Version where an insert was
causing an error with OCIFetch
- New PostgreSQL Version Added by Michael Paesold (mpaesold@gmx.at)
1.05 - Bug Fix (mySQL)
- Removed repeated piece of code.
1.04 - Update
- $db->num_rows - variable added (All Versions)
- $db->rows_affected - variable added ( mySQL / Oracle )
- New InterBase/FireBase Version Added by LLCedar (llceder@wxs.nl)
1.03 - Update (All Versions)
Enhancements to vardump..
- Added display variable type
- If no value display No Value / False
- Added this readme file
1.02 - Update (mySQL version)
Added $db->insert_id to
1.01 - New Version
Oracle 8 Version as below
1.00 - Initial Release
Functions..
- $db->get_results - get multiple row result set from the database (or previously cached results)
- $db->get_row -- get one row from the database (or previously cached results)
- $db->get_col - get one column from query (or previously cached results) based on column offset
- $db->get_var -- get one variable, from one row, from the database (or previously cached results)
- $db->query -- send a query to the database (and if any results, cache them)
- $db->debug - print last sql query and returned results (if any)
- $db->vardump - print the contents and structure of any variable
- $db->select -- select a new database to work with
- $db->get_col_info - get information about one or all columns such as column name or type
- $db = new db -- Initiate new db object.

About

PHP class to make interacting with a database ridiculusly easy

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

=======================================================================
Author: Justin Vincent - http://justinvincent.com/ezsql
Name: ezSQL
Desc: Class to make it very easy to deal with database connections.
License: FREE / Donation (LGPL - You may do what you like with ezSQL - no exceptions.)
=======================================================================
Follow me on twitter:
http://twitter.com/justinvincent
Check out my podcast TechZing where we talk about tech and tech startups:
http://techzinglive.com
=======================================================================
Change Log:
2.17 - Updates to ezSQL_postgresql (thx Stefanie Janine Stoelting)
2.16 - Added profiling functions to mySQL version & added fix to stop mySQL hanging on very long runnign scripts
2.15 - Fixed long standing bug with $db->rows_affected (thx Pere Pasqual)
2.14 - Added sybase connector by Muhammad Iyas
2.13 - Support for transations. See: http://stackoverflow.com/questions/8754215/ezsql-with-multiple-queries/8781798
2.12 - Added $db->get_set() - Creates a SET nvp sql string from an associative array (and escapes all values)
2.11 - Fixed $db->insert_id in postgress version
2.10 - Added isset($this->dbh) check to orcale version
2.09 - Fixed issues with mysql_real_escape_string not woirkign if no connection (Thanks to Nicolas Vannier)
2.08 - Re-added timer functions that seemed to have disappeared
2.07 - Used mysql_real_escape_string instead of mysql_escape_string
2.02 - Please note, this change log is no longer being used
please see change_log.htm for changes later than
2.02
2.01 - Added Disk Caching & Multiple DB connection support
2.00 - Re-factored ezSQL for Oracle, mySQL & SQLite
- DB Object is no longer initialized by default
(makes it easier to use multiple connections)
- Core ezSQL functions have been separated from DB
specific functions (makes it easier to add new databases)
- Errors are being piped through trigger_error
(using standard PHP error logging)
- Abstracted error messages (enabling future translation)
- Upgraded $db->query error return functionality
- Added $db->systdate function to abstract mySQL NOW()
and Oracle SYSDATE
Note: For other DB Types please use version 1.26
1.26 - Update (All)
- Fixed the pesky regular expression that tests for
an insert/update etc. Now it works even for the most
weirdly formatted queries! (thx dille)
1.25 - Update (mySQL/Oracle)
- Optimised $db->query function in both mySQL and Oracle versions.
Now the return value is working 'as expected' in ALL cases so you
are always safe using:
if ( $db->query("some query") )
No matter if an insert or a select.
In the case of insert/update the return value is based on the
number of rows affected (used to be insert id which is
not valid for an update)
In the case of select the return value is based on number of
rows returned.
Thx Bill Bruggemeyer :)
1.24 - Update (Docs)
- Now includes tutorial for using EZ Results with Smarty
templating engine - thx Steve Warwick
1.23 - Update (All PHP versions)
- Fixed the age old problem of returning false on
successful insert. $db->query()now returns the insert_id
if there was a successful insert or false if not. Sorry
that this took so long to fix!
Version Affected: mySQL/Porgress/ms-sql/sqlite
- Added new variable $db->debug_all
By default it is set to false but if you change it
to true. i.e.
include_once "ez_sql.php";
$db->debug_all = true;
Then it will print out each and every query and all
of the results that your script creates.
Very useful if you want to follow the entire logic
path of what ALL your queries are doing, but can't
be bothered to put $db->debug() statements all over
the place!
Update (Postgress SQL Version)
- Our old friend Tom De Bruyne as updated the postgress
version.
1) It now works without throwing errors (also thanks Geert Nijpels)
2) It now, in theory, returns $this->insert_id after an insert.
1.22 - Update (All PHP versions)
- Added new variable $db->num_queries it keeps track
of exactly how many 'real' (not cached) queries were
executed (using ezSQL) during the lifetime of one script.
Useful for debugging and optimizing.
- Put a white table behind the vardump output so that
it doesn't get lost on dark websites.
1.21 - Update (All Versions)
- Now 'replace' really does return an insert id..
(the 1.19 fix did not complete the job. Doh!)
1.20 - Update (New Version)
- C++ SQLite version added. Look at ez_demo.cpp.
(thanks Brennan Falkner)
1.19 - Update (All Versions)
- Fixed bug where any string containing the word 'insert',
'delete' or 'update' (where those words were not the actual
query) was causing unexpected results (thx Simon Willison).
The fix was to alter the regular expression to only match
queries containing those words at the beginning of the query
(with optional whitespace allowed before the words)
i.e.
THIS: preg_match("/$word /",strtolower($query))
TO THIS: preg_match("/^\\s*$word /",strtolower($query))
- Added new sql word 'replace' to the above match pattern
so that the $db->insert_id would be also be populated
on 'replace' queries (thx Rolf Dahl)
1.18 - Update (All Versions)
- Added new SQLite version (thanks Brennan Falkner)
- Fixed new bug that was introduced with bug fix 1.14
false was being returned on successful insert update etc.
now it is true
1.17 - Update (All Versions)
- New MS-SQL version added (thanks to Tom De Bruyne)
- Made the donation request 'less annoying' by making it more subtle!
1.16 - Update (All Versions)
- Added new function $db->escape()
Formats a string correctly to stop accidental
mal formed queries under all PHP conditions
1.15 - Bug fixes
- (Postgress)
$this->result = false; was in the wrong place.
Fixed! Thanks (Carlos Camiña García)
- (all versions)
Pesky get_var was still returning null instead of 0 in
certain cases. Bug fix of !== suggested by Osman
1.14 - Bug fixes
- (all versions)
Added !='' into the conditional return of get_var.
because if the result was the number 0 it was not returning anything
- (mySQL / Interbase / Postgress)
Added $this->result = false; if insert / update / delete
because it was causing mysql retrieval errors that no one
knew about due to the @ signs.
1.13 - Update (All Versions)
- Swapped 2nd and 3rd argument order.
- From.. get_row(query, int row offset, output type)
- To.... get_row(query, output type, int row offset)
1.12 - Update (All Versions)
- Tweaked the new hide/show error code
- Made sure the $this->show_errors was always initialised
- $db->query() function now returns false if there was an SQL error.
So that you can now do the following when you hide errors.
if ( $db->query("BAD SYNTAX") )
{
echo "Bad Query";
}
1.11 - Update (All Versions)
- added $db->hide_errors();
- added $db->show_errors();
- added global array $EZSQL_ERROR;
1.10 - Fix (mySQL)
- Insist that mysql_insert_id(); uses $this->dbh.
1.09 - Bug Fix
- Oracle version had the wrong number of parameters in the
$db = new db(etc,etc,etc,etc) part.
- Also added var $vardump_called; to all versions.
1.08 - Bug Fix
- Michael fixed the select function in PostgreSQL version.
1.07 - Bug Fix
- Added var $debug_called; to all versions.
1.06 - Update
- Fixed Bug In Oracle Version where an insert was
causing an error with OCIFetch
- New PostgreSQL Version Added by Michael Paesold (mpaesold@gmx.at)
1.05 - Bug Fix (mySQL)
- Removed repeated piece of code.
1.04 - Update
- $db->num_rows - variable added (All Versions)
- $db->rows_affected - variable added ( mySQL / Oracle )
- New InterBase/FireBase Version Added by LLCedar (llceder@wxs.nl)
1.03 - Update (All Versions)
Enhancements to vardump..
- Added display variable type
- If no value display No Value / False
- Added this readme file
1.02 - Update (mySQL version)
Added $db->insert_id to
1.01 - New Version
Oracle 8 Version as below
1.00 - Initial Release
Functions..
- $db->get_results - get multiple row result set from the database (or previously cached results)
- $db->get_row -- get one row from the database (or previously cached results)
- $db->get_col - get one column from query (or previously cached results) based on column offset
- $db->get_var -- get one variable, from one row, from the database (or previously cached results)
- $db->query -- send a query to the database (and if any results, cache them)
- $db->debug - print last sql query and returned results (if any)
- $db->vardump - print the contents and structure of any variable
- $db->select -- select a new database to work with
- $db->get_col_info - get information about one or all columns such as column name or type
- $db = new db -- Initiate new db object.

About

PHP class to make interacting with a database ridiculusly easy

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

=======================================================================
Author: Justin Vincent - http://justinvincent.com/ezsql
Name: ezSQL
Desc: Class to make it very easy to deal with database connections.
License: FREE / Donation (LGPL - You may do what you like with ezSQL - no exceptions.)
=======================================================================
Follow me on twitter:
http://twitter.com/justinvincent
Check out my podcast TechZing where we talk about tech and tech startups:
http://techzinglive.com
=======================================================================
Change Log:
2.17 - Updates to ezSQL_postgresql (thx Stefanie Janine Stoelting)
2.16 - Added profiling functions to mySQL version & added fix to stop mySQL hanging on very long runnign scripts
2.15 - Fixed long standing bug with $db->rows_affected (thx Pere Pasqual)
2.14 - Added sybase connector by Muhammad Iyas
2.13 - Support for transations. See: http://stackoverflow.com/questions/8754215/ezsql-with-multiple-queries/8781798
2.12 - Added $db->get_set() - Creates a SET nvp sql string from an associative array (and escapes all values)
2.11 - Fixed $db->insert_id in postgress version
2.10 - Added isset($this->dbh) check to orcale version
2.09 - Fixed issues with mysql_real_escape_string not woirkign if no connection (Thanks to Nicolas Vannier)
2.08 - Re-added timer functions that seemed to have disappeared
2.07 - Used mysql_real_escape_string instead of mysql_escape_string
2.02 - Please note, this change log is no longer being used
please see change_log.htm for changes later than
2.02
2.01 - Added Disk Caching & Multiple DB connection support
2.00 - Re-factored ezSQL for Oracle, mySQL & SQLite
- DB Object is no longer initialized by default
(makes it easier to use multiple connections)
- Core ezSQL functions have been separated from DB
specific functions (makes it easier to add new databases)
- Errors are being piped through trigger_error
(using standard PHP error logging)
- Abstracted error messages (enabling future translation)
- Upgraded $db->query error return functionality
- Added $db->systdate function to abstract mySQL NOW()
and Oracle SYSDATE
Note: For other DB Types please use version 1.26
1.26 - Update (All)
- Fixed the pesky regular expression that tests for
an insert/update etc. Now it works even for the most
weirdly formatted queries! (thx dille)
1.25 - Update (mySQL/Oracle)
- Optimised $db->query function in both mySQL and Oracle versions.
Now the return value is working 'as expected' in ALL cases so you
are always safe using:
if ( $db->query("some query") )
No matter if an insert or a select.
In the case of insert/update the return value is based on the
number of rows affected (used to be insert id which is
not valid for an update)
In the case of select the return value is based on number of
rows returned.
Thx Bill Bruggemeyer :)
1.24 - Update (Docs)
- Now includes tutorial for using EZ Results with Smarty
templating engine - thx Steve Warwick
1.23 - Update (All PHP versions)
- Fixed the age old problem of returning false on
successful insert. $db->query()now returns the insert_id
if there was a successful insert or false if not. Sorry
that this took so long to fix!
Version Affected: mySQL/Porgress/ms-sql/sqlite
- Added new variable $db->debug_all
By default it is set to false but if you change it
to true. i.e.
include_once "ez_sql.php";
$db->debug_all = true;
Then it will print out each and every query and all
of the results that your script creates.
Very useful if you want to follow the entire logic
path of what ALL your queries are doing, but can't
be bothered to put $db->debug() statements all over
the place!
Update (Postgress SQL Version)
- Our old friend Tom De Bruyne as updated the postgress
version.
1) It now works without throwing errors (also thanks Geert Nijpels)
2) It now, in theory, returns $this->insert_id after an insert.
1.22 - Update (All PHP versions)
- Added new variable $db->num_queries it keeps track
of exactly how many 'real' (not cached) queries were
executed (using ezSQL) during the lifetime of one script.
Useful for debugging and optimizing.
- Put a white table behind the vardump output so that
it doesn't get lost on dark websites.
1.21 - Update (All Versions)
- Now 'replace' really does return an insert id..
(the 1.19 fix did not complete the job. Doh!)
1.20 - Update (New Version)
- C++ SQLite version added. Look at ez_demo.cpp.
(thanks Brennan Falkner)
1.19 - Update (All Versions)
- Fixed bug where any string containing the word 'insert',
'delete' or 'update' (where those words were not the actual
query) was causing unexpected results (thx Simon Willison).
The fix was to alter the regular expression to only match
queries containing those words at the beginning of the query
(with optional whitespace allowed before the words)
i.e.
THIS: preg_match("/$word /",strtolower($query))
TO THIS: preg_match("/^\\s*$word /",strtolower($query))
- Added new sql word 'replace' to the above match pattern
so that the $db->insert_id would be also be populated
on 'replace' queries (thx Rolf Dahl)
1.18 - Update (All Versions)
- Added new SQLite version (thanks Brennan Falkner)
- Fixed new bug that was introduced with bug fix 1.14
false was being returned on successful insert update etc.
now it is true
1.17 - Update (All Versions)
- New MS-SQL version added (thanks to Tom De Bruyne)
- Made the donation request 'less annoying' by making it more subtle!
1.16 - Update (All Versions)
- Added new function $db->escape()
Formats a string correctly to stop accidental
mal formed queries under all PHP conditions
1.15 - Bug fixes
- (Postgress)
$this->result = false; was in the wrong place.
Fixed! Thanks (Carlos Camiña García)
- (all versions)
Pesky get_var was still returning null instead of 0 in
certain cases. Bug fix of !== suggested by Osman
1.14 - Bug fixes
- (all versions)
Added !='' into the conditional return of get_var.
because if the result was the number 0 it was not returning anything
- (mySQL / Interbase / Postgress)
Added $this->result = false; if insert / update / delete
because it was causing mysql retrieval errors that no one
knew about due to the @ signs.
1.13 - Update (All Versions)
- Swapped 2nd and 3rd argument order.
- From.. get_row(query, int row offset, output type)
- To.... get_row(query, output type, int row offset)
1.12 - Update (All Versions)
- Tweaked the new hide/show error code
- Made sure the $this->show_errors was always initialised
- $db->query() function now returns false if there was an SQL error.
So that you can now do the following when you hide errors.
if ( $db->query("BAD SYNTAX") )
{
echo "Bad Query";
}
1.11 - Update (All Versions)
- added $db->hide_errors();
- added $db->show_errors();
- added global array $EZSQL_ERROR;
1.10 - Fix (mySQL)
- Insist that mysql_insert_id(); uses $this->dbh.
1.09 - Bug Fix
- Oracle version had the wrong number of parameters in the
$db = new db(etc,etc,etc,etc) part.
- Also added var $vardump_called; to all versions.
1.08 - Bug Fix
- Michael fixed the select function in PostgreSQL version.
1.07 - Bug Fix
- Added var $debug_called; to all versions.
1.06 - Update
- Fixed Bug In Oracle Version where an insert was
causing an error with OCIFetch
- New PostgreSQL Version Added by Michael Paesold (mpaesold@gmx.at)
1.05 - Bug Fix (mySQL)
- Removed repeated piece of code.
1.04 - Update
- $db->num_rows - variable added (All Versions)
- $db->rows_affected - variable added ( mySQL / Oracle )
- New InterBase/FireBase Version Added by LLCedar (llceder@wxs.nl)
1.03 - Update (All Versions)
Enhancements to vardump..
- Added display variable type
- If no value display No Value / False
- Added this readme file
1.02 - Update (mySQL version)
Added $db->insert_id to
1.01 - New Version
Oracle 8 Version as below
1.00 - Initial Release
Functions..
- $db->get_results - get multiple row result set from the database (or previously cached results)
- $db->get_row -- get one row from the database (or previously cached results)
- $db->get_col - get one column from query (or previously cached results) based on column offset
- $db->get_var -- get one variable, from one row, from the database (or previously cached results)
- $db->query -- send a query to the database (and if any results, cache them)
- $db->debug - print last sql query and returned results (if any)
- $db->vardump - print the contents and structure of any variable
- $db->select -- select a new database to work with
- $db->get_col_info - get information about one or all columns such as column name or type
- $db = new db -- Initiate new db object.

About

PHP class to make interacting with a database ridiculusly easy

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors