]> git.mxchange.org Git - mailer.git/blobdiff - inc/db/lib-mysql3.php
Referal system refactured (and some parts fixed), wrapper function introduced:
[mailer.git] / inc / db / lib-mysql3.php
index 68cdd067ad5fd0c6f8a8f11e871b22585b76dcc7..2d25cdea884311a5e9502aeec0868c1380437160 100644 (file)
@@ -339,7 +339,7 @@ function SQL_RESULT_FROM_ARRAY ($table, $columns, $idRow, $id, $F, $L) {
        } // END  - if
 
        // Prepare the SQL statement
-       $sql = "SELECT `".implode("`,`", $columns)."` FROM `{?_MYSQL_PREFIX?}_%s` WHERE `%s`='%s' LIMIT 1";
+       $sql = "SELECT `".implode("`, `", $columns)."` FROM `{?_MYSQL_PREFIX?}_%s` WHERE `%s`='%s' LIMIT 1";
 
        // Return the result
        return SQL_QUERY_ESC($sql,
@@ -434,12 +434,13 @@ function SQL_ALTER_TABLE ($sql, $F, $L, $enableCodes = true) {
                        $keyName = ',';
                        while (strpos($keyName, ',') !== false) {
                                // Use last
+                               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'keyName=' . $keyName . 'begin=' . $begin . ' - BEFORE');
                                $keyName = str_replace('`', '', $tableArray[count($tableArray) - $begin]);
-                               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, $keyName . '----------------' . $begin);
+                               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'keyName=' . $keyName . 'begin=' . $begin . ' - BETWEEN');
 
                                // Remove brackes
                                $keyName = str_replace('(', '', str_replace(')', '', $keyName));
-                               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, $keyName . '----------------' . $begin);
+                               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'keyName=' . $keyName . 'begin=' . $begin . ' - AFTER');
 
                                // Continue
                                $begin++;
@@ -448,13 +449,13 @@ function SQL_ALTER_TABLE ($sql, $F, $L, $enableCodes = true) {
 
                // Shall we run it?
                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ', tableArray[3]=' . $tableArray[3] . ',keyName=' . $keyName);
-               if ((!isSqlTableIndexAdded($tableName, $tableArray[3], $keyName)) && ($tableArray[3] == 'ADD')) {
+               if (($tableArray[3] == 'ADD') && (!isSqlTableIndexFound($tableName, $keyName))) {
                        // Send it to the SQL_QUERY() function to add it
-                       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, $sql);
+                       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'sql=' . $sql . ' - ADDING!');
                        $result = SQL_QUERY($sql, $F, $L, $enableCodes);
-               } elseif ((isSqlTableIndexAdded($tableName, $tableArray[3], $keyName)) && ($tableArray[3] == 'DROP')) {
+               } elseif (($tableArray[3] == 'DROP') && (isSqlTableIndexFound($tableName, $keyName))) {
                        // Send it to the SQL_QUERY() function to drop it
-                       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, $sql);
+                       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'sql=' . $sql . ' - DROPPING!');
                        $result = SQL_QUERY($sql, $F, $L, $enableCodes);
                } else {
                        // Not executed
@@ -559,6 +560,7 @@ function SQL_EPOCHE_TO_TIMESTAMP ($timestamp) {
 
 // Check if there is a SQL table created
 function isSqlTableCreated ($tableName) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ' - ENTERED!');
        // Do we have cache?
        if (!isset($GLOBALS[__FUNCTION__][$tableName])) {
                // Check if the table is there
@@ -571,11 +573,13 @@ function isSqlTableCreated ($tableName) {
        } // END - if
 
        // Return cache
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',result=' . intval($GLOBALS[__FUNCTION__][$tableName]) . ' - EXIT!');
        return $GLOBALS[__FUNCTION__][$tableName];
 }
 
 // Is a table column there?
 function isSqlTableColumnFound ($tableName, $columnName) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',columnName=' . $columName . ' - ENTERED!');
        // Do we have cache?
        if (!isset($GLOBALS[__FUNCTION__][$tableName][$columnName])) {
                // And column name as well
@@ -594,49 +598,37 @@ function isSqlTableColumnFound ($tableName, $columnName) {
        } // END - if
 
        // Return cache
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',columnName=' . $columName . ',result=' . intval($GLOBALS[__FUNCTION__][$tableName][$columnName]) . ' - EXIT!');
        return $GLOBALS[__FUNCTION__][$tableName][$columnName];
 }
 
-// Checks depending on the mode if the table is there
-function isSqlTableIndexAdded ($tableName, $mode, $keyName) {
+// Checks depending on the mode if the index is there
+function isSqlTableIndexFound ($tableName, $keyName) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',columnName=' . $keyName . ' - ENTERED!');
        // Do we have cache?
-       if (!isset($GLOBALS[__FUNCTION__][$tableName][$mode])) {
+       if (!isset($GLOBALS[__FUNCTION__][$tableName][$keyName])) {
                // Show indexes
                $result = SQL_QUERY_ESC("SHOW INDEX FROM `%s`", array($tableName), __FUNCTION__, __LINE__);
 
-               // Non-skipping is default for ADD
-               $GLOBALS[__FUNCTION__][$tableName][$mode] = false;
-
-               // But should we DROP?
-               if ($mode == 'DROP') {
-                       // Then skip if nothing found
-                       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Going to drop key ' . $keyName);
-                       $GLOBALS[__FUNCTION__][$tableName][$mode] = true;
-               } // END - if
+               // The column is not found by default
+               $GLOBALS[__FUNCTION__][$tableName][$keyName] = false;
 
                // Walk through all
                while ($content = SQL_FETCHARRAY($result)) {
-                       // Is it found?
-                       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'columnName='.$keyName.',content=<pre>' . print_r($content, true) . '</pre>');
-                       if (($content['Key_name'] == $keyName) && ($mode == 'ADD')) {
-                               // Skip this query!
-                               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'ADD: Skiped: tableName=' . $tableName . ',mode=' . $mode . ',keyName=' . $keyName);
-                               $GLOBALS[__FUNCTION__][$tableName][$mode] = true;
-                               break;
-                       } elseif (($content['Key_name'] == $keyName) && ($mode == 'DROP')) {
-                               // Don't skip this!
-                               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'DROP: Not skiped: tableName=' . $tableName . ',mode=' . $mode . ',keyName=' . $keyName);
-                               $GLOBALS[__FUNCTION__][$tableName][$mode] = false;
-                               break;
-                       }
+                       // Add all entries for better caching behavior
+                       $GLOBALS[__FUNCTION__][$tableName][$content['Key_name']] = true;
                } // END - while
 
                // Free result
                SQL_FREERESULT($result);
+       } else {
+               // Cache used
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',columnName=' . $keyName . ',result=' . intval($GLOBALS[__FUNCTION__][$tableName][$keyName]) . ' - CACHE!');
        } // END - if
 
        // Return cache
-       return $GLOBALS[__FUNCTION__][$tableName][$mode];
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'tableName=' . $tableName . ',columnName=' . $keyName . ',result=' . intval($GLOBALS[__FUNCTION__][$tableName][$keyName]) . ' - EXIT!');
+       return $GLOBALS[__FUNCTION__][$tableName][$keyName];
 }
 
 // [EOF]