Changes in Versions 5.0 and later
Version |
Changes |
8.4 |
Change is_a() to instanceof to appease PHP 5.3.7.
|
8.3 |
Adjust test suite to be more robust and run under PHP 5.2.
|
8.2 |
Add @package tag to classes.
|
8.1 |
Add the following methods:
- GetRecordSetAsList()
- GetRecordSetAsTable()
- GetRecordSetAsXML()
- GetRecordSetAsTransform()
- GetOptionListGenerator()
- GetInputListGenerator()
- GetRecordSetAsInput()
|
8.0 |
- WARNING: renamed autoload.php to taasc_autoload.php to avoid
conflicts. Update any include/require statements you have put
in your code.
|
7.2 |
- Improve efficiency of regular expressions in ParseSafeMarkup().
- Minor fixes in how test suite runs.
|
7.1 |
- Ensure SQLite3 record as array functions return null on data definition statements.
- Minor documentation improvements.
|
7.0 |
- Rename files and require autoload function.
- Convert to PHP 5 syntax.
- Add SQLite 3 support.
- Eliminate reserved words.
- Fix edge case mistakes parsing Safe Markup.
- Provide PHPUnit tests.
|
6.6 |
- Add the Escape() method.
- Avoid potential notices by ensuring $php_errormsg is set.
- Add ability to have Safe Markup not touch specified fields.
- Add link text to Safe Markup capabilities.
|
6.5 |
- Add support for PHP's mysqli extension.
- ereg being deprecated in PHP 5.3, so change regexes to preg.
- Move Safe Markup parsing into a centralized method: SQLSolution_General::ParseSafeMarkup().
- Remove new_link parameter from mysql_pconnect() call.
- In RecordSetAsTransform(), only make call to initial GoToRecord() call if rows exist.
|
6.4 |
Coding standards tweaks.
|
6.3 |
Improve XHTML compliance by using checked="checked" and selected="selected".
|
6.2 |
Use ini_set('track_errors', 1) in Connect() instead
of making users set it and bugging them via TestTrackErrors() if it's not.
|
6.1 |
Use the new new_link and client_flags parameters to
mysql_connect() if PHP is at 4.3.0 or greater.
Improve docblocks in *-user.inc files.
|
6.0 |
Add PostgreSQL and SQLite support.
|
5.3 |
Minor efficiency tweaks.
|
5.2 |
OptionListGenerator() 'id' $Opt now only put into
<select> element, easing use of labels to allow
accesskeys. OptionListGenerator() and InputListGenerator(): added groupby
key to $Opt, changed test on required $Opt keys to isset or =='' since
some values may be 0. Added orderby to switch on $Opt key loop in InputListGenerator().
|
5.1 |
Changed line endings from CR LF to LF |
5.0 |
SQLSolution_User and SQLSolution_Specifics renamed to denote type of database, eliminating phpDocumentor conflicts. Order of classes rearranged. SQLSolution_Customizations class moved to a separate file. Started adding phpDocumentor comments. A few minor efficiency tweaks, requiring the use of PHP 4. |
MySQL Edition
Version |
Changes |
4.02 |
First public release. |
4.03 |
SQLDbHandle was used in some places where SQLConnection should have been used. |
4.04 |
Added GoToRecord() function. Decided that the program should not halt when calling ReleaseRecordSet() and Disconnect() on nonexistent record sets and connections. |
4.05 |
Added @'s in front of a few mysql_error() calls just to play it safe. |
4.06 |
Made the HTML Escaping process optional. |
4.07 |
Internal release. All changes documented in next version. |
4.08 |
InsertID() now has three optional arguments ($Table, $Field and $Where ) for compliance with portability with the ODBC Edition.
- Safe Markup operations now allow "_" in URL's.
- Added the
blockquote, pre, tt and em Paired Elements to the Safe Markup syntax.
- The
FieldLengthEnumArray() and FieldLengthAssocArray() functions were moved from the SQLSolution_EditionSpecifics class to the SQLSolution_General class.
- Several uses of double quotes were converted to single quotes for a small performance improvement.
|
4.09 |
Various reformatting to make things easier to read. ErrorHandler and General sub classes moved to separate file. |
ODBC Edition
Version |
Changes |
4.02 |
First public release. |
4.03 |
ObtainHandle() now forwards a call to Connect() rather than generating an error. This improves portability between MySQL and ODBC. |
4.04 |
Added GoToRecord() function. Decided that the program should not halt when calling ReleaseRecordSet() and Disconnect() on nonexistent record sets and connections. Altered FieldLengthEnumArray() and FieldLengthAssocArray() functions so they'll avoid a bug in PHP 4.0.3. |
4.05 |
Added @'s in front of two odbc function which didn't have them already, just to play it safe. |
4.06 |
Made the HTML Escaping process optional. |
4.07 |
Internal release. All changes documented in next version. |
4.08 |
InsertID() now has three required arguments ($Table, $Field and $Where ). This function now has the ability to find insert id's.
- Safe Markup operations now allow "_" in URL's.
- Added the
blockquote, pre, tt and em Paired Elements to the Safe Markup syntax.
- The
FieldLengthEnumArray() and FieldLengthAssocArray() functions were moved from the SQLSolution_EditionSpecifics class to the SQLSolution_General class.
- Several uses of double quotes were converted to single quotes for a small performance improvement.
|
4.09 |
RecordAsAssocArray() and RecordAsEnumArray() heavily reworked to handle changes in PHP. Various reformatting to make things easier to read. ErrorHandler and General sub classes moved to separate file. |
Version |
Changes |
4.02 |
First public release. |
4.03 |
Setting Wrap to N now makes sure cell contents don't wrap in very wide tables when using the RecordSetAsTable(), RecordAsTable() and RecordSetAsInput() functions. Also changed RecordAsTable() to place in blank cells to improve formatting in some browsers. |
4.04 |
CopyObjectContentsToSQL() renamed CopyObjectContentsIntoSQL() . It's generally a bad idea to change function names, but since only a few copies have been distributed thus far and this is an obscure function, we figure it would be best to have name consistency with the Form Solution. |
4.05 |
RecordSetAsInput() modified so hyperlinks don't have to be generated while making the KeyField visible. |
4.06 |
The RecordSetAsUL(), RecordSetAsTable(), RecordSetAsTransform() and RecordSetAsInput() now call the GoToRecord() function before traversing the query results, permitting these functions to be called repeatedly without having to re-run the query. Error messages were made slightly more descriptive in some cases. Modified TimestampToUnix() and DatetimeToUnix() functions so they'll work around bugs in PHP 4. |
4.07 |
RecordAsTable() and RecordAsInput() updated to return 1 on success, permitting use in a while() statement. If the most recent query has no results, displays message saying no records were found. If the result set's internal row pointer has moved beyond the last record, nothing is displayed and nothing is returned. Similarly, RecordIntoThis() returns 1 on success, permitting use in a while() statement. But, if the most recent query has no results or the internal row pointer moves beyond the last record, the variables are cleared and nothing is returned. RecordSetAsTable() and RecordSetAsTransform() now set the SQLCreditQueryString to blank upon finishing table display. |
4.08 |
Internal release. All changes documented in next version. |
4.09 |
- Refined use of the
$SQL->SQLTagStarted variable so it both needs to be set less frequently and better ensures error pages produce well-formed XML.
- Added the
RecordSetAsXML() function.
- A function named
FieldNameEnumArray() was added.
- Performance of
RecordSetAsTable(), RecordSetAsList(), and RecordSetAsInput()
improved. The call to FieldName() for each field in each record has been substituted
with placing the column names in an enumerated array only once.
- The
FieldLengthEnumArray() and FieldLengthAssocArray() functions
were moved from the SQLSolution_EditionSpecifics class to the
SQLSolution_General class.
- Several uses of double quotes were converted to single quotes for a small performance improvement.
TestTrackErrors() now uses a non-database test so load on the database server will be reduced.
- Error reporting for functions calling other functions made more descript.
- Reworked argument format for the
RecordAsTable(), RecordSetAsTable(),
RecordSetAsTransform(), OptionListGenerator(), InputListGenerator(), RecordAsInput()
and RecordSetAsInput() functions. Now uses one or two arrays as arguments rather
than a multitude of individual agruments. This both eliminates the need to declare earlier
arguments just to set an argument later in the list and eases adding new options. *
Most of these new arguments get passed through PHP's
htmlspecialchars() function to ensure clean HTML.
- The
RecordSetAsUL() function is being replaced by the RecordSetAsList()
function. The delimiter option was added. *
- Since
RecordSetAsTransform() now uses array arguments, the following class
variables were deleted: SQLTableTitle, SQLVerticalLabel, SQLHorizontalLabel
and SQLBackground . *
- All record display functions now have the ability to declare an HTML class in each element.
This is useful for implementating Cascading Style Sheets.
InputListGenerator() properly displays columns and records for results that have a small number of rows.
* Where major modifications have been made, we've implemented interim measures which will
convert old function calls to the new function calls. Such interim measures will be removed
eventually, so please port your scripts to take advantage of the new syntax.
|
4.10 |
Removed interim measures to make old arguments work. |
4.11 |
- All functions which have the
class argument can now use the new id argument. Handy with formatting via Cascading Style Sheets.
- You can now add additional items to the output of the
OptionListGenerator() and InputListGenerator() functions.
- Improved column width formatting when
InputListGenerator() contains lists with fewer items than columns .
- Removed the class attribute for
<br /> tags in InputListGenerator() .
- Table headers are now optional in the
RecordAsTable(), RecordSetAsTable(), RecordAsInput() and RecordSetAsInput() functions.
|
4.12 |
Reworked things to eliminate Notices. Added is_object() test to CopyObjectContentsIntoSQL(). Made things more readable. ErrorHandler and General sub classes moved to a separate file. |
4.13 |
RecordSetAsTable() RecordSetAsXML() RecordSetAsTansform() and RecordSetAsInput() tweaked to avoid Warnings. |
4.14 |
Changed some empty() calls to isnull() and/or != '' to avoid problems with fields that return 0.
Fine tuned the regular expressions in DatetimeToUnix() and TimestampToUnix() .
|
4.15 |
Eliminated bug in RecordSetAsTable() and RecordSetAsInput() when the nohead option was selected. |
This class contains your customizations. We don't touch it.