X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Flibs%2Frefback_functions.php;h=7ece79ea7d93eaea20c1ad34cd1ba0cf8c1c134c;hb=9553dbc9eed40bfa2beffa79813f2d5cd21fa8ac;hp=5dc539c2e7ad52e091f99f3de2770139ce2b1386;hpb=8f14df8c3232a31917df0ac57363dbd6e975c147;p=mailer.git diff --git a/inc/libs/refback_functions.php b/inc/libs/refback_functions.php index 5dc539c2e7..7ece79ea7d 100644 --- a/inc/libs/refback_functions.php +++ b/inc/libs/refback_functions.php @@ -52,7 +52,7 @@ function addRefbackPoints ($userid, $ref, $points, $ref_points) { $return = $points; // Get all ref levels - $result_refs = SQL_QUERY("SELECT `level`, `percents` FROM `{?_MYSQL_PREFIX?}_refdepths` WHERE `level` > 0 ORDER BY `level` ASC", + $result_refs = SQL_QUERY('SELECT `level`, `percents` FROM `{?_MYSQL_PREFIX?}_refdepths` WHERE `level` > 0 ORDER BY `level` ASC', __FUNCTION__, __LINE__); // "Walk" through all level @@ -114,36 +114,39 @@ function getRefbackPercents ($userid, $ref) { // Skip identical ids if ($userid == $ref) return 0; - // Default is zero - $percents = '0'; - - // Get percents from database - $result = SQL_QUERY_ESC("SELECT refback FROM `{?_MYSQL_PREFIX?}_user_refs` WHERE `userid`=%s AND `refid`=%s LIMIT 1", - array($ref, $userid), __FUNCTION__, __LINE__); - - // Entry found? (Should be!) - if (SQL_NUMROWS($result) == 1) { - // Fetch percents - list($percents) = SQL_FETCHROW($result); - //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."):percents={$percents}
"); - } else { - // Debug log - //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."): NO ENTRY FOUND! :-(
"); - logDebugMessage(__FUNCTION__, __LINE__, "userid={$userid},ref={$ref} - No entry found! :-("); - } - - // Free result - SQL_FREERESULT($result); + // Is it cached? + if (!isset($GLOBALS['refback_percents'][$userid][$ref])) { + // Default is zero + $GLOBALS['refback_percents'][$userid][$ref] = '0'; + + // Get percents from database + $result = SQL_QUERY_ESC("SELECT `refback` FROM `{?_MYSQL_PREFIX?}_user_refs` WHERE `userid`=%s AND `refid`=%s LIMIT 1", + array($ref, $userid), __FUNCTION__, __LINE__); + + // Entry found? (Should be!) + if (SQL_NUMROWS($result) == 1) { + // Fetch percents + list($GLOBALS['refback_percents'][$userid][$ref]) = SQL_FETCHROW($result); + //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."):percents=".$GLOBALS['refback_percents'][$userid][$ref]."
"); + } else { + // Debug log + //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."): NO ENTRY FOUND! :-(
"); + logDebugMessage(__FUNCTION__, __LINE__, 'userid=' . $userid . ',ref=' . $ref . ' - No entry found! :-('); + } + + // Free result + SQL_FREERESULT($result); + } // END - if // Return percents //* DEBUG: */ print("----------------------- ".__FUNCTION__." - EXIT ------------------------
"); - return $percents; + return $GLOBALS['refback_percents'][$userid][$ref]; } // "Getter" for userid array which will return only one entry -function getArrayFromRefbackLevel ($rid, $level) { +function getArrayFromRefbackLevel ($refid, $level) { //* DEBUG: */ print("----------------------- ".__FUNCTION__." - ENTRY ----------------------------------------------- ".__FUNCTION__." - EXIT ------------------------
"); return $userIds; } @@ -225,7 +228,8 @@ function updateRefbackTable ($userid) { array(bigintval($userid), $GLOBALS['refback_level'], bigintval($GLOBALS['refback_refid'][$GLOBALS['refback_level']])), __FUNCTION__, __LINE__); // Move to next referal level and count his counter one up! - $GLOBALS['refback_level']++; updateRefbackTable($GLOBALS['refback_refid'][($GLOBALS['refback_level'] - 1)]); + $GLOBALS['refback_level']++; + updateRefbackTable($GLOBALS['refback_refid'][($GLOBALS['refback_level'] - 1)]); } // END - if // Do we have another level here? @@ -305,7 +309,7 @@ ORDER BY array(bigintval($userid), bigintval($level)), __FUNCTION__, __LINE__); // Are there some entries? - if (SQL_NUMROWS($result) > 0) { + if (!SQL_HASZERONUMS($result)) { // Fetch all entries while ($row = SQL_FETCHARRAY($result)) { // Add row @@ -352,20 +356,20 @@ function getArrayFromUserRefbackData ($id) { function updateMemberRefbackPercents ($id, $percents) { //* DEBUG: */ print("----------------------- ".__FUNCTION__." - ENTRY ------------------------