Making the Interakt products compatible with PHP5.3
Posted: 2010-02-20 11:19
This article posted by Andrei Bejenaru (great job, thanks) on the former Interakt forum will be surely very useful in 2010 !
-------------------------------------------------------------------------------
Making the Interakt products compatible with PHP5.3
This post also applies to Adobe Dreamweaver Developer Toolbox (ADDT)
PHP 5.3 brings the following sets of changes: deprecates old features in favour of modern, standard and performant ones; makes the language syntax less permissive.
1. Common's folder
**************************************************************
1.1. Deprecated function mysql_escape_string() used in includes/common/lib/db/KT_FakeRecordset.class.php
a) line 115, replace
$insert_values .= "'" . mysql_escape_string($value) . "', ";
with
$insert_values .= "'" . mysql_real_escape_string($value) . "', ";
b) line 131, replace
$multiple_values[$i] .= "'" . mysql_escape_string($value) . "', ";
with
$multiple_values[$i] .= "'" . mysql_real_escape_string($value) . "', ";
c) line 198, replace
$select_sql .= "'" . mysql_escape_string($value) . "' AS " . $colName . ", ";
with
$select_sql .= "'" . mysql_real_escape_string($value) . "' AS " . $colName . ", ";
1.2. Deprecated function split() used in includes/common/lib/file/KT_File.class.php
line 229, replace
$arr = split('[\\/]', $file);
with
$arr = preg_split('#[\\/]#', $file);
1.3. Deprecated function split() used in includes/common/lib/file_upload/KT_FileUpload.class.php
line 233, replace
$arr = split("[\\/]", $destinationName);
with
$arr = preg_split("#[\\/]#", $destinationName);
1.4. Deprecated function split() used in includes/common/lib/folder/KT_Folder.class.php
line 146, replace
$arrPath = split("[\\/]", $path);
with
$arrPath = preg_split("#[\\/]#", $path);
1.5. Deprecated function split() used in includes/common/lib/image/KT_Image.class.php
line 2004, replace
$arr = split("[/\]", $path);
with
$arr = preg_split("#[\\/]#", $path);
1.6. Deprecated Safe Mode configuration used in includes/common/lib/shell/KT_Shell.class.php
line 95, replace
if (ini_get("safe_mode")) {
with
if (@ini_get("safe_mode")) {
2. Kollection
******************************************************************
2.1. includes/tng/triggers/tNG_defTrigg.inc.php
line 49, replace
function Trigger_Default_FormValidation(&$tNG, &$uniVal) {
with
function Trigger_Default_FormValidation(&$tNG, $uniVal) {
2.2. includes/tng/tNG_custom.class.php
line 19, replace
parent::tNG_fields($connection);
with
parent::tNG($connection);
2.3. includes/tng/tNG_delete.class.php
line 19, replace
parent::tNG_fields($connection);
with
parent::tNG($connection);
2.4. includes/tng/tNG_fields.class.php
line 425, replace
function getFieldError($fName) {
with
function getFieldError($fName, $cnt = 1) {
2.5. includes/tng/tNG_insert.class.php
line 19, replace
parent::tNG_fields($connection);
with
parent::tNG($connection);
2.6. includes/tng/tNG_log.class.php
a) line 17, replace
function log($className, $methodName=NULL, $message=null) {
with
static function log($className, $methodName=NULL, $message=null) {
b) line 25, replace
function getResult($mode, $uniq='') {
with
static function getResult($mode, $uniq='') {
2.7. includes/tng/tNG_multiple.class.php
line 147, replace
function getFieldError($fName, $cnt) {
with
function getFieldError($fName, $cnt = 1) {
2.8. includes/tng/tNG_multipleDelete.class.php
line 17, replace
parent::tNG_multiple($connection);
with
parent::tNG($connection);
2.9. includes/tng/tNG_multipleInsert.class.php
line 31, replace
parent::tNG_multiple($connection);
with
parent::tNG($connection);
2.10. includes/tng/tNG_multipleUpdate.class.php
line 24, replace
parent::tNG_multiple($connection);
with
parent::tNG($connection);
2.11. includes/tng/tNG_update.class.php
line 18, replace
parent::tNG_fields($connection);
with
parent::tNG($connection);
3. Kart & Shop
*****************************************************************
3.1. Deprecated function session_unregister() used in includes/krt/krt_functions.inc.php
a) line 82, replace
session_unregister('KT_MXKART');
with
unset($_SESSION['KT_MXKART']);
b) line 93, replace
session_unregister($key);
with
unset($_SESSION[$key]);
3.2. includes/tng/krt_tNG.class.php
line 28, replace
function addColumn($colName, $type, $method, $reference, $null) {
with
function addColumn($colName, $type, $method, $reference, $defaultValue = '') {
3.3. includes/tng/krt_tNG_delete.class.php
line 13, replace
function setPrimaryKey($colName, $type, $method, $reference)
with
function setPrimaryKey($colName, $type, $method='VALUE', $reference=NULL)
3.4. includes/tng/krt_tNG_insert.class.php
line 10, replace
function addColumn($colName, $type, $method, $reference, $null) {
with
function addColumn($colName, $type, $method, $reference, $defaultValue = '') {
3.5. Deprecated function split() used in MXKart/authnet.php
a) line 52, replace
$resp $response);
with
$resp $response);
b) line 54, replace
$resp $response);
with
$resp $response);
4. KTML
*****************************************************************
4.1. Deprecated function split() used in includes/ktm/plugins/ktml4_security.class.php
line 239, replace
$arr = split("\\/", $folderName);
with
$arr = preg_split("#[\\/]#", $folderName);
4.2. Deprecated function split() used in includes/ktm/plugins/modules/spellcheck/service/ktml4_mspl_spellcheck.class.php
a) line 178, replace
$tmpAddedWords = split("[\n\r]", $content);
with
$tmpAddedWords = preg_split("#[\n\r]#", $content);
b) line 367, replace
$lines = split("[\r\n]", $text);
with
$lines = preg_split("#[\r\n]#", $text);
-------------------------------------------------------------------------------
Making the Interakt products compatible with PHP5.3
This post also applies to Adobe Dreamweaver Developer Toolbox (ADDT)
PHP 5.3 brings the following sets of changes: deprecates old features in favour of modern, standard and performant ones; makes the language syntax less permissive.
1. Common's folder
**************************************************************
1.1. Deprecated function mysql_escape_string() used in includes/common/lib/db/KT_FakeRecordset.class.php
a) line 115, replace
$insert_values .= "'" . mysql_escape_string($value) . "', ";
with
$insert_values .= "'" . mysql_real_escape_string($value) . "', ";
b) line 131, replace
$multiple_values[$i] .= "'" . mysql_escape_string($value) . "', ";
with
$multiple_values[$i] .= "'" . mysql_real_escape_string($value) . "', ";
c) line 198, replace
$select_sql .= "'" . mysql_escape_string($value) . "' AS " . $colName . ", ";
with
$select_sql .= "'" . mysql_real_escape_string($value) . "' AS " . $colName . ", ";
1.2. Deprecated function split() used in includes/common/lib/file/KT_File.class.php
line 229, replace
$arr = split('[\\/]', $file);
with
$arr = preg_split('#[\\/]#', $file);
1.3. Deprecated function split() used in includes/common/lib/file_upload/KT_FileUpload.class.php
line 233, replace
$arr = split("[\\/]", $destinationName);
with
$arr = preg_split("#[\\/]#", $destinationName);
1.4. Deprecated function split() used in includes/common/lib/folder/KT_Folder.class.php
line 146, replace
$arrPath = split("[\\/]", $path);
with
$arrPath = preg_split("#[\\/]#", $path);
1.5. Deprecated function split() used in includes/common/lib/image/KT_Image.class.php
line 2004, replace
$arr = split("[/\]", $path);
with
$arr = preg_split("#[\\/]#", $path);
1.6. Deprecated Safe Mode configuration used in includes/common/lib/shell/KT_Shell.class.php
line 95, replace
if (ini_get("safe_mode")) {
with
if (@ini_get("safe_mode")) {
2. Kollection
******************************************************************
2.1. includes/tng/triggers/tNG_defTrigg.inc.php
line 49, replace
function Trigger_Default_FormValidation(&$tNG, &$uniVal) {
with
function Trigger_Default_FormValidation(&$tNG, $uniVal) {
2.2. includes/tng/tNG_custom.class.php
line 19, replace
parent::tNG_fields($connection);
with
parent::tNG($connection);
2.3. includes/tng/tNG_delete.class.php
line 19, replace
parent::tNG_fields($connection);
with
parent::tNG($connection);
2.4. includes/tng/tNG_fields.class.php
line 425, replace
function getFieldError($fName) {
with
function getFieldError($fName, $cnt = 1) {
2.5. includes/tng/tNG_insert.class.php
line 19, replace
parent::tNG_fields($connection);
with
parent::tNG($connection);
2.6. includes/tng/tNG_log.class.php
a) line 17, replace
function log($className, $methodName=NULL, $message=null) {
with
static function log($className, $methodName=NULL, $message=null) {
b) line 25, replace
function getResult($mode, $uniq='') {
with
static function getResult($mode, $uniq='') {
2.7. includes/tng/tNG_multiple.class.php
line 147, replace
function getFieldError($fName, $cnt) {
with
function getFieldError($fName, $cnt = 1) {
2.8. includes/tng/tNG_multipleDelete.class.php
line 17, replace
parent::tNG_multiple($connection);
with
parent::tNG($connection);
2.9. includes/tng/tNG_multipleInsert.class.php
line 31, replace
parent::tNG_multiple($connection);
with
parent::tNG($connection);
2.10. includes/tng/tNG_multipleUpdate.class.php
line 24, replace
parent::tNG_multiple($connection);
with
parent::tNG($connection);
2.11. includes/tng/tNG_update.class.php
line 18, replace
parent::tNG_fields($connection);
with
parent::tNG($connection);
3. Kart & Shop
*****************************************************************
3.1. Deprecated function session_unregister() used in includes/krt/krt_functions.inc.php
a) line 82, replace
session_unregister('KT_MXKART');
with
unset($_SESSION['KT_MXKART']);
b) line 93, replace
session_unregister($key);
with
unset($_SESSION[$key]);
3.2. includes/tng/krt_tNG.class.php
line 28, replace
function addColumn($colName, $type, $method, $reference, $null) {
with
function addColumn($colName, $type, $method, $reference, $defaultValue = '') {
3.3. includes/tng/krt_tNG_delete.class.php
line 13, replace
function setPrimaryKey($colName, $type, $method, $reference)
with
function setPrimaryKey($colName, $type, $method='VALUE', $reference=NULL)
3.4. includes/tng/krt_tNG_insert.class.php
line 10, replace
function addColumn($colName, $type, $method, $reference, $null) {
with
function addColumn($colName, $type, $method, $reference, $defaultValue = '') {
3.5. Deprecated function split() used in MXKart/authnet.php
a) line 52, replace
$resp $response);
with
$resp $response);
b) line 54, replace
$resp $response);
with
$resp $response);
4. KTML
*****************************************************************
4.1. Deprecated function split() used in includes/ktm/plugins/ktml4_security.class.php
line 239, replace
$arr = split("\\/", $folderName);
with
$arr = preg_split("#[\\/]#", $folderName);
4.2. Deprecated function split() used in includes/ktm/plugins/modules/spellcheck/service/ktml4_mspl_spellcheck.class.php
a) line 178, replace
$tmpAddedWords = split("[\n\r]", $content);
with
$tmpAddedWords = preg_split("#[\n\r]#", $content);
b) line 367, replace
$lines = split("[\r\n]", $text);
with
$lines = preg_split("#[\r\n]#", $text);