PHP/MySQL issues with Dreamweaver 8.0.2 Updater
Some Dreamweaver 8.0.2 issues have been reported specific to the PHP/MySQL server model. Adobe has created a Dreamweaver extension fix for both Windows and Macintosh that resolves these issues. You should only install the extension fix if you are using the PHP/MySQL server model and experiencing one of the specific issues listed below:
- SQL queries with the MySQL CONCAT function are rewritten (Ref. 207218)
- XSL Transformation server behavior doesn't work with PHP 5.1.4 (Ref. 207225)
- PHP simple recordset writes incorrect code with filter using "Entered Value" and LIKE clause (Ref. 207462)
- Backslashes incorrectly added to GET and POST data when magic quotes are turned off (Ref. 208374)
To install the hotfix, open the downloaded .zip file and extract the extension package file (.mxp). A good place to save the .mxp is the Downloaded Extensions folder within the Dreamweaver application folder on your computer. Double-click the .mxp file to install it. For more information on installing extensions, see Adding extensions to Dreamweaver in the help documentation.
SQL queries with the MySQL CONCAT functions are rewritten
New or existing SQL queries in the Advanced view of the Recordset dialog box that contain the MySQL CONCAT function are rewritten by Dreamweaver 8.0.2 after you open and close the Recordset dialog box. For example, you enter or already have a SQL statement such as:
SELECT authors.author_id,
CONCAT(authors.first_name,' ', authors.family_name) AS author
FROM authors ORDER BY authors.family_name, authors.first_name
After you close the Recordset dialog box, the CONCAT function is stripped out, and your SQL statement looks like this:
SELECT authors.author_id,
authors.first_name,' ', authors.family_name AS author
FROM authors ORDER BY authors.family_name, authors.first_name
(Ref. 207218)
XSL Transformation server behavior doesn't work with PHP 5.1.4
An XSLT fragment embedded in a PHP page using the XSL Transformation server behavior triggers the following MM_XSLTransform error when processed by a PHP 5.1.4 server:
MM_XSLTransform error.
http://newsrss.mysite.com/rss/rss.xml is not a valid XML document.
Non-static method DOMDocument::loadXML() should not be called statically, assuming $this from incompatible context in file http://newsrss.mysite.com/rss/rss.xml.
The error message incorrectly reports that the XML data source is not a valid XML document. The same page displays successfully when processed by a PHP 5.1.2 server. This problem occurs in Dreamweaver 8.0, 8.0.1 and 8.0.2 and is due to the use of a static function call that was newly deprecated in PHP 5.1.4. (Ref. 207225)
PHP simple recordset writes incorrect code with filter using "Entered Value" and LIKE clause
When you create a PHP/MySQL recordset using the Simple view of the recordset dialog box, incorrect code is generated when you use the following filters on an "Entered Value":
- begins with
- ends with
- contains
Each of these filters uses the SQL "LIKE" clause and a "%" wildcard character. Single quotation marks that should be in the LIKE clause are missing.
For example, the generated code looks like this:
" SELECT * FROM 'test' WHERE 'foo' LIKE hello% "
The generated code should look like this:
" SELECT * FROM 'test' WHERE 'foo' LIKE 'hello%'"
(Ref. 207462)
Backslashes incorrectly added to GET and POST data when magic quotes are turned off
This issue will affect you if the php.ini file on your server has the following setting:
; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = Off
By default, this PHP setting is "On". When you use a variable in a SQL query, Dreamweaver 8.0.2 passes GET, POST, COOKIE, SESSION, and SERVER data to the addslashes() function when theget_magic_quotes_gpc() function returns false. Here is an example of the code Dreamweaver 8.0.2 generates if you use a URL parameter to filter a recordset:
$colname_Recordset1 = "-1"; if (isset($_GET['author_id'])) { $colname_Recordset1 = (get_magic_quotes_gpc()) ? $_GET['author_id'] : addslashes($_GET['author_id']); }
This code inserts backslashes in front of quotation marks, which are then further escaped by the GetSQLValueString() function. If your database table contains data that includes quotation marks or apostrophes, the queries will fail. For example, O'Toole becomes O\'Toole. When subsequently passed toGetSQLValueString(), this becomes 'O\\\'Toole'. (Ref. 208374)
keywords: php hotfix, php/mysql hotfix, 8.0.2 hotfix, php fix, php/mysql fix, php/mysql extension fix
This content requires Flash
To view this content, JavaScript must be enabled, and you need the latest version of the Adobe Flash Player.
Download the free Flash Player now!
