Zebra_Database

Software Screenshot:
Zebra_Database
Software Details:
Version: 2.9.3 updated
Upload Date: 6 Mar 16
Developer: Stefan Gabos
Distribution Type: Freeware
Downloads: 39
Size: 79 Kb

Rating: nan/5 (Total Votes: 0)

Zebra_Database is a simple database abstraction layer for MySQL, written around PHP’s built-in mysqli extension.

Zebra_Database is practically a middleman between the developer's PHP code and the database itself.

It takes PHP-formatted code and translates it to valid SQL syntax, executing it on a MySQL database and fetching the results.

This method of using prepared database statement is much more secure than the process of embedding SQL code in the PHP syntax, keeping the two on different levels, where other developer either won't have access or just for the sake of a better code structure.

Besides this, a debugger is also included for troubleshooting database interactions on a Web page, helping developers get to the bottom of non-responsive PHP-MySQL transactions.

Additionally to the abstraction layer and debug tool, Zebra_Database comes with a built-in caching system.

This caching system can work together with memcache or a local hard-drive, remembering results for selected or the most used DB queries.

What is new in this release:

  • Added a new "memcache_key_prefix" property; this allows separate caching of the same queries by multiple instances of the libraries on the same memcache server, or the library handling multiple domains on the same memcache server.

What is new in version 2.9.0:

  • Added a new "memcache_key_prefix" property; this allows separate caching of the same queries by multiple instances of the libraries on the same memcache server, or the library handling multiple domains on the same memcache server.

What is new in version 2.8.8:

  • Added a new "memcache_key_prefix" property; this allows separate caching of the same queries by multiple instances of the libraries on the same memcache server, or the library handling multiple domains on the same memcache server.

What is new in version 2.8.2:

  • Minor performance optimizations in the debug console's JavaScript code.

What is new in version 2.8:

  • Fixed a bug when specifying custom paths for the "write_log" method.
  • Fixed an issue where setting "cache_path" to a path without trailing slash would break the script.
  • Fixed an issue where setting the caching time to 0 would still create (empty) cache files.
  • The JS and CSS files used by the debugger window are now loaded "protocol-less" in order to solve those.

What is new in version 2.7.3:

  • The library now tries to write errors to the system log (if PHP is configured so; read more here) when the "debug" property is set to FALSE (as when the "debug" property is set to TRUE the error messages are reported in the debug console);
  • The library will now show a warning message in the debug console if the "memcache" extension is loaded but it is not used.

What is new in version 2.7.2:

  • Fixed a bug that most likely appeared since 2.7, where the "seek" method (and any method relying on it, like all the "fetch" methods) would produce a warning in the debug console if there were no records in the sought resource.
  • Fixed a bug where NULL could not be used in the "replacements" array of a query.

What is new in version 2.7.1:

  • The select() method took arguments in a different order than specified in the documentation;
  • Fixed a bug where the update() and insert_update() methods were not working if in the array with the columns to update, the INC() keyword was used with a replacement marker instead of a value, and the actual value was given in the replacements array;
  • Fixed a bug where the insert_update() method was not working when the only update field used the INC() keyword; the generated query contained an invalid comma between UPDATE and the field name.

What is new in version 2.7:

  • Added support for caching query results using memcache.
  • Fixed a bug where the script would crash if the object was instantiated more than once and the language method was being called for each of the instances;
  • Completely rewritten the dlookup method which was not working correctly if anything else than a comma separated list of column names was used (like an expression, for example);
  • The "connect" method can now take an additional argument instructing it to connect to the database right away rather than using a "lazy" connection;
  • Fixed a bug where some of the elements in the debug console were incorrectly inheriting the page's body color.

What is new in version 2.6:

  • Changed the name of "get_columns" method to "get_table_columns" as it returned the number of columns in a given table, and added a new "get_columns" method which takes as argument a resource and returns the number of columns in the given resource;
  • Some documentation clarifications.

What is new in version 2.5:

  • A new method is now available: "get_link" which returns the MySQL link identifier associated with the current connection to the MySQL server. Why as a separate method? Because the library uses "lazy connection" (it is not actually connecting to the database until first query is executed) there's no link identifier available when calling the connect method.
  • A new argument is now available for the insert and insert_bulk methods which allows the creation of INSERT IGNORE queries which will skip records that would cause a duplicate entry for a primary key.
  • The default value of the "debug" property was set to FALSE.

What is new in version 2.4:

  • Fixed a bug with the insert_bulk method (thanks to Edy Galantzan for reporting).
  • Added a new method: table_exists which checks to see if a table with the name given as argument exists in the database.
  • The select method now also accepts limit and order arguments; due to this change, this method is not compatible with previous versions.
  • Some documentation refinements.

What is new in version 2.3:

  • Fixed a bug where the script would generate a warning if the "update" method was called with invalid arguments;
  • Changed how the insert_bulk method needs to receive arguments, making it more simple to use.

What is new in version 2.2:

  • Fixed a bug where the "select" method war returning a boolean value rather than a resource (thanks to Monil);
  • The class now uses "lazy connection" meaning that it will not actually connect to the database until the first query is run;
  • The debug console now shows also session variables;
  • The "show_debug_console" method can now be instructed to return output rather than print it to the screen;
  • The highlighter now highlights more keywords;
  • Improved documentation for the "connect" method.

What is new in version 2.1:

  • Fixed a bug where the console inherited CSS properties from the parent application;
  • Fixed some bugs in the JavaScript file that would break the code when parent application was running MooTools;
  • Transactions are now supported;
  • Added a new "insert_bulk" method which allows inserting multiple values into a table using a single query (thanks Sebi P. for the suggestion);
  • Added a new "insert_update" method which will create INSERT statements with ON DUPLICATE UPDATE (thank Sebi P. for the suggestion);
  • Enhanced the "update" method;
  • The debug console now shows a warning if no charset and collation was specified;
  • Corrections to the documentation.

What is new in version 2.0:

  • The entire code was improved and some of the properties as well as method names were changed and, therefore, this version breaks compatibility with earlier versions;
  • Fixed a bug where the script would try to also cache action queries;
  • Fixed a bug in the "seek" method;
  • Fixed a bug where on some configurations of Apache/PHP the script would not work;
  • Fixed a bug where if there was a connection error or MySQL generated an error and the debug console was minimized, it would not be shown automatically;
  • Fixed a bug where the "dlookup" method would not return escaped column names (i.e. `order`);
  • Fixed a bug where the "found_rows" property was incorrect for cached queries;
  • Fixed a bug where the debug console would improperly manage columns enclosed in ` (backtick);
  • Fixed a bug that caused improper display of some strings in the debug console;
  • Added a new method "select" - a shorthand for selecting queries;
  • Added a new method "get_columns" - returns information about a given table's columns;
  • Added a new method "implode" - similar to PHP's own implode() function, with the difference that this method "escapes" imploded elements and also encloses them in grave accents;
  • Added a new method "set_charset" - sets the characters set and the collation of the database;
  • Improved functionality of fetch_assoc_all() and fetch_obj_all() methods;
  • The debug console shows more information and in a much better and organized way;
  • Rewritten the method for logging queries to a txt file making the output very easy to read;
  • Dropped the XTemplate templating engine in order to improve speed; every aspect of the debug console can still be changed through the CSS file.

Requirements:

  • PHP 5 or higher
  • MySQL 4.1.22 or higher

Similar Software

paypal-php
paypal-php

24 Feb 15

Zebra_Form
Zebra_Form

9 Feb 16

BananaHTML
BananaHTML

12 May 15

Other Software of Developer Stefan Gabos

Zebra_Session
Zebra_Session

14 Apr 15

Zebra_Dialog
Zebra_Dialog

9 Feb 16

Zebra_Datepicker
Zebra_Datepicker

9 Feb 16

Zebra Pagination
Zebra Pagination

9 Feb 16

Comments to Zebra_Database

Comments not found
Add Comment
Turn on images!