]> git.mxchange.org Git - mailer.git/blobdiff - inc/db/lib-mysql3.php
More fixes for new installer and script in general :(
[mailer.git] / inc / db / lib-mysql3.php
index e577551244475eff1a4dda43238c663e3089198a..d7a7fd3872ea7f8138fb851a8c0be9aace892320 100644 (file)
@@ -75,7 +75,10 @@ function SQL_QUERY ($sqlString, $F, $L, $enableCodes = TRUE) {
                $GLOBALS[__FUNCTION__][$sqlString] = $sqlStringModified;
                $GLOBALS['last_sql']               = $sqlStringModified;
                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Stored cache: ' . $sqlStringModified);
-       }  else {
+       } elseif (!SQL_IS_LINK_UP()) {
+               // Link went down while using cached SQL
+               reportBug(__FUNCTION__, __LINE__, 'Link went down while using cached SQL: sqlString=' . $sqlString . ',F=' . basename($F) . ',L=' . $L . ',enableCodes=' . intval($enableCodes));
+       } else {
                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Cache used: ' . $sqlString);
 
                // Use cache (to save a lot function calls
@@ -169,7 +172,7 @@ function SQL_AFFECTEDROWS() {
 
 // SQL fetch row
 function SQL_FETCHROW ($resource) {
-       // Is a result resource set?
+       // Is $resource valid?
        if ((!is_resource($resource)) || (!SQL_IS_LINK_UP())) return FALSE;
 
        // Fetch the data and return it
@@ -178,10 +181,10 @@ function SQL_FETCHROW ($resource) {
 
 // SQL fetch array
 function SQL_FETCHARRAY ($resource) {
-       // Is a result resource set?
+       // Is $resource valid?
        if ((!is_resource($resource)) || (!SQL_IS_LINK_UP())) return FALSE;
 
-       // Load row from database
+       // Load row as array from database
        $row = mysql_fetch_assoc($resource);
 
        // Return only arrays here
@@ -219,10 +222,11 @@ function SQL_CONNECT ($host, $login, $password, $F, $L) {
                 * SQL_IS_LINK_UP() will only return 'true' if there is really a
                 * working database link.
                 */
-               SQL_SET_LINK($linkResource);
+               SQL_SET_LINK(__FUNCTION__, __LINE__, $linkResource);
        } // END - if
 
        // Return the resource
+       //* DEBUG: */ logDebugMessage($F . ':' . __FUNCTION__, $L . ':' . __LINE__, 'linkResource[]=' . gettype($linkResource));
        return $linkResource;
 }
 
@@ -232,23 +236,27 @@ function SQL_SELECT_DB ($dbName, $F, $L) {
        if (!SQL_IS_LINK_UP()) return FALSE;
 
        // Return the result
+       //* DEBUG: */ logDebugMessage($F . ':' . __FUNCTION__, $L . ':' . __LINE__, 'Selecting database ' . $dbName);
        return mysql_select_db($dbName, SQL_GET_LINK()) or SQL_ERROR($F, $L,  mysql_error());
 }
 
 // SQL close link
 function SQL_CLOSE ($F, $L) {
+       // Is the link up?
        if (!SQL_IS_LINK_UP()) {
                // Skip double close
+               //* DEBUG: */ logDebugMessage($F . ':' . __FUNCTION__, $L . ':' . __LINE__, 'Called but no link is open.');
                return FALSE;
        } // END - if
 
        // Close database link and forget the link
-       $close = mysql_close(SQL_GET_LINK()) or SQL_ERROR($F, $L, mysql_error());
+       $close = mysql_close(SQL_GET_LINK()) or SQL_ERROR($F . ':' . __FUNCTION__, $L . ':' . __LINE__, mysql_error());
 
-       // Close link
-       SQL_SET_LINK(NULL);
+       // Close link in this layer
+       unsetSqlLinkUp(__FUNCTION__, __LINE__);
 
        // Return the result
+       //* DEBUG: */ logDebugMessage($F . ':' . __FUNCTION__, $L . ':' . __LINE__, 'close[' . gettype($close) . ']=' . intval($close));
        return $close;
 }