X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Flibs%2Frallye_functions.php;h=aa4859a4e11e4af579e86f6420a64193dca288e9;hb=d8148e3f1f3a6762b2e786dbe99ada269dcf2ea0;hp=7d41947db686ab0b5247993c97662f7b78ed6d27;hpb=cca98f57dff720b174d21d071cee8303462485d7;p=mailer.git diff --git a/inc/libs/rallye_functions.php b/inc/libs/rallye_functions.php index 7d41947db6..aa4859a4e1 100644 --- a/inc/libs/rallye_functions.php +++ b/inc/libs/rallye_functions.php @@ -49,11 +49,11 @@ function RALLYE_AUTOSTART_RALLYES($result) SQL_FREERESULT($result); // Set notified to Y - SQL_QUERY_ESC("UPDATE `{!MYSQL_PREFIX!}_rallye_data` SET notified='Y' WHERE id=%s LIMIT 1", + SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_rallye_data` SET notified='Y' WHERE id=%s LIMIT 1", array(bigintval($id)), __FILE__, __LINE__); // Do a snapshot off all user refs - $result_user = SQL_QUERY("SELECT userid FROM `{!MYSQL_PREFIX!}_user_data` WHERE status='CONFIRMED' ORDER BY userid", __FILE__, __LINE__); + $result_user = SQL_QUERY("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE `status`='CONFIRMED' ORDER BY userid", __FILE__, __LINE__); // Transfer all neccessary data to the global $DATA array $DATA['uid_cnt'] = SQL_NUMROWS($result_user); @@ -65,7 +65,7 @@ function RALLYE_AUTOSTART_RALLYES($result) if ($min_users == 0) { // Rallye ends without user limitation - $DATA['min_users'] = RALLYE_END_NO_USER_LIMITATION; + $DATA['min_users'] = getMessage('RALLYE_END_NO_USER_LIMITATION'); } else { // Rallye ends when X members are totally in your exchange $DATA['min_users'] = RALLYE_END_USERS_1." ".$min_users." ".RALLYE_END_USERS_2; @@ -73,7 +73,7 @@ function RALLYE_AUTOSTART_RALLYES($result) if ($min_prices == 0) { // Rallye ends without user limitation - $DATA['min_prices'] = RALLYE_END_NO_PRICE_LIMITATION; + $DATA['min_prices'] = getMessage('RALLYE_END_NO_PRICE_LIMITATION'); } else { // Rallye ends when X members are totally in your exchange $DATA['min_prices'] = RALLYE_END_PRICES_1." ".$min_prices." ".RALLYE_END_PRICES_2; @@ -91,7 +91,7 @@ function RALLYE_AUTOSTART_RALLYES($result) if (empty($cnt)) $cnt = 0; // Added prevent some unknown troubles... :-? // Check if line is already included... - $result_ref = SQL_QUERY_ESC("SELECT id FROM `{!MYSQL_PREFIX!}_rallye_users` WHERE rallye_id=%s AND userid=%s LIMIT 1", + $result_ref = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_rallye_users` WHERE rallye_id=%s AND userid=%s LIMIT 1", array(bigintval($id), bigintval($uid)), __FILE__, __LINE__); if (SQL_NUMROWS($result_ref) == 0) { // Free memory @@ -99,10 +99,10 @@ function RALLYE_AUTOSTART_RALLYES($result) // Add userid and his ref count to table $result_ref = SQL_QUERY_ESC("SELECT DISTINCT SUM(p.points) -FROM `{!MYSQL_PREFIX!}_user_points` AS p -LEFT JOIN `{!MYSQL_PREFIX!}_user_data` AS d +FROM `{!_MYSQL_PREFIX!}_user_points` AS p +LEFT JOIN `{!_MYSQL_PREFIX!}_user_data` AS d ON p.userid=d.userid -WHERE d.status='CONFIRMED' AND d.max_mails > 0 AND d.mails_confirmed >= %s AND p.ref_depth=1 AND p.points > 0 AND d.userid=%s", +WHERE d.`status`='CONFIRMED' AND d.max_mails > 0 AND d.mails_confirmed >= %s AND p.ref_depth=1 AND p.points > 0 AND d.userid=%s", array(getConfig('ref_payout'), bigintval($uid)), __FILE__, __LINE__); list($cpoints) = SQL_FETCHROW($result_ref); SQL_FREERESULT($result_ref); @@ -110,7 +110,7 @@ WHERE d.status='CONFIRMED' AND d.max_mails > 0 AND d.mails_confirmed >= %s AND p if (empty($cpoints)) $cpoints = "0.00000"; // Add info line - SQL_QUERY_ESC("INSERT INTO `{!MYSQL_PREFIX!}_rallye_users` (rallye_id, userid, refs, curr_points) + SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_rallye_users` (rallye_id, userid, refs, curr_points) VALUES ('%s','%s','%s','%s')", array(bigintval($id), bigintval($uid), bigintval($cnt), $cpoints), __FILE__, __LINE__); $un = true; @@ -147,7 +147,7 @@ function RALLYE_ADD_PRICES($rallye,$mode="email") } // Load prices - $result_prices = SQL_QUERY("SELECT price_level, points, info FROM `{!MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id='".$rallye."' ORDER BY price_level", __FILE__, __LINE__); + $result_prices = SQL_QUERY("SELECT price_level, points, info FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id='".$rallye."' ORDER BY price_level", __FILE__, __LINE__); if (SQL_NUMROWS($result_prices) > 0) { // Load prices @@ -185,14 +185,14 @@ function RALLYE_ADD_PRICES($rallye,$mode="email") function RALLYE_ADD_TOPUSERS($rallye,$default=0) { // First check how many prices are set - $result = SQL_QUERY_ESC("SELECT id FROM `{!MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s ORDER BY price_level", + $result = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s ORDER BY price_level", array(bigintval($rallye)), __FILE__, __LINE__); $prices = SQL_NUMROWS($result); SQL_FREERESULT($result); // And load only limited users - $result = SQL_QUERY_ESC("SELECT DISTINCT u.userid, u.refs, u.curr_points FROM `{!MYSQL_PREFIX!}_rallye_users` AS u -LEFT JOIN `{!MYSQL_PREFIX!}_refsystem` AS r + $result = SQL_QUERY_ESC("SELECT DISTINCT u.userid, u.refs, u.curr_points FROM `{!_MYSQL_PREFIX!}_rallye_users` AS u +LEFT JOIN `{!_MYSQL_PREFIX!}_refsystem` AS r ON u.userid=r.userid WHERE u.rallye_id=%s AND r.counter > 0 ORDER BY u.refs DESC", array(bigintval($rallye)), __FILE__, __LINE__); @@ -204,16 +204,16 @@ WHERE u.rallye_id=%s AND r.counter > 0 ORDER BY u.refs DESC", 'cpoints' => array() ); - while(list($uid, $refs, $cpoints) = SQL_FETCHROW($result)) + while (list($uid, $refs, $cpoints) = SQL_FETCHROW($result)) { // Get current refs $cnt = RALLYE_GET_REFCOUNT($uid, $refs); // Points of ref's - $result_ref = SQL_QUERY_ESC("SELECT DISTINCT p.points FROM `{!MYSQL_PREFIX!}_user_points` AS p -LEFT JOIN `{!MYSQL_PREFIX!}_user_data` AS d + $result_ref = SQL_QUERY_ESC("SELECT DISTINCT p.points FROM `{!_MYSQL_PREFIX!}_user_points` AS p +LEFT JOIN `{!_MYSQL_PREFIX!}_user_data` AS d ON p.userid=d.userid -WHERE d.userid=%s AND d.status='CONFIRMED' AND p.ref_depth=1 AND d.max_mails > 0 AND d.mails_confirmed >= %s +WHERE d.userid=%s AND d.`status`='CONFIRMED' AND p.ref_depth=1 AND d.max_mails > 0 AND d.mails_confirmed >= %s LIMIT 1", array(bigintval($uid), getConfig('ref_payout')), __FILE__, __LINE__); list($refpoints) = SQL_FETCHROW($result_ref); SQL_FREERESULT($result_ref); @@ -279,7 +279,7 @@ function RALLYE_AUTOADD_USER($uid) } // END - if // Check for an auto-add rallye - $result = SQL_QUERY("SELECT id, title, start_time, end_time, send_notify".$ADD." FROM `{!MYSQL_PREFIX!}_rallye_data` WHERE is_active='Y' AND notified='Y' AND auto_add_new_user='Y' AND expired='N' LIMIT 1", __FILE__, __LINE__); + $result = SQL_QUERY("SELECT id, title, start_time, end_time, send_notify".$ADD." FROM `{!_MYSQL_PREFIX!}_rallye_data` WHERE is_active='Y' AND notified='Y' AND auto_add_new_user='Y' AND expired='N' LIMIT 1", __FILE__, __LINE__); if (SQL_NUMROWS($result) == 1) { // Init variables $min_users = 0; $min_prices = 0; @@ -294,13 +294,13 @@ function RALLYE_AUTOADD_USER($uid) SQL_FREERESULT($result); // Check if line is already included... - $result = SQL_QUERY_ESC("SELECT id FROM `{!MYSQL_PREFIX!}_rallye_users` WHERE rallye_id=%s AND userid=%s LIMIT 1", + $result = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_rallye_users` WHERE rallye_id=%s AND userid=%s LIMIT 1", array(bigintval($id), bigintval($uid)), __FILE__, __LINE__); // Is this user added? if (SQL_NUMROWS($result) == 0) { // Add userid and his ref count to table - SQL_QUERY_ESC("INSERT INTO `{!MYSQL_PREFIX!}_rallye_users` (rallye_id, userid, refs) + SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_rallye_users` (rallye_id, userid, refs) VALUES ('%s','%s','0')", array(bigintval($id), bigintval($uid)), __FILE__, __LINE__); } else { @@ -370,8 +370,8 @@ function RALLYE_EXPIRE_RALLYES($result) // active = 1: account is still confirmed // active = 0: account is deleted or locked $result = SQL_QUERY_ESC("SELECT COUNT(userid) AS active -FROM `{!MYSQL_PREFIX!}_user_data` -WHERE userid=%s AND status='CONFIRMED' +FROM `{!_MYSQL_PREFIX!}_user_data` +WHERE userid=%s AND `status`='CONFIRMED' LIMIT 1", array(bigintval($uid)), __FILE__, __LINE__); list($active) = SQL_FETCHROW($result); SQL_FREERESULT($result); @@ -391,7 +391,7 @@ LIMIT 1", array(bigintval($uid)), __FILE__, __LINE__); } // END - if // Expire rallye - SQL_QUERY_ESC("UPDATE `{!MYSQL_PREFIX!}_rallye_data` SET expired='Y' WHERE id=%s LIMIT 1", + SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_rallye_data` SET expired='Y' WHERE id=%s LIMIT 1", array(bigintval($id)), __FILE__, __LINE__); // Run array through (by uid is the most important 2nd-level-array) @@ -461,7 +461,7 @@ LIMIT 1", array(bigintval($uid)), __FILE__, __LINE__); SEND_ADMIN_NOTIFICATION(RALLYE_ADMIN_EXPIRED.": ".$title, $templ, $cnt, 0); // Add task - SQL_QUERY_ESC("INSERT INTO `{!MYSQL_PREFIX!}_task_system` (status, task_type, subject, text, task_created) + SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_task_system` (status, task_type, subject, text, task_created) VALUES ('NEW','RALLYE_EXPIRED','".RALLYE_ADMIN_EXPIRED.": %s','".RALLYE_ADMIN_EXPIRED_TEXT."',UNIX_TIMESTAMP())", array($title), __FILE__, __LINE__); @@ -474,7 +474,7 @@ function RALLYE_LOAD_USER_DATA($uids_array) $uid_string = implode(",", $uids_array['uid']); // Load users - $result = SQL_QUERY_ESC("SELECT userid, gender, surname, family, email FROM `{!MYSQL_PREFIX!}_user_data` WHERE userid IN(%s) AND status='CONFIRMED' ORDER BY userid LIMIT %s", + $result = SQL_QUERY_ESC("SELECT userid, gender, surname, family, email FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid IN(%s) AND `status`='CONFIRMED' ORDER BY userid LIMIT %s", array($uid_string, count($uids_array)), __FILE__, __LINE__); $ret = ""; while (list($u, $gender, $surname, $family, $email) = SQL_FETCHROW($result)) @@ -496,9 +496,9 @@ function RALLYE_LOAD_PRICES_ARRAY($rallye) ); // Load prices - $result = SQL_QUERY_ESC("SELECT price_level, points, info FROM `{!MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s ORDER BY price_level", + $result = SQL_QUERY_ESC("SELECT price_level, points, info FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s ORDER BY price_level", array(bigintval($rallye)), __FILE__, __LINE__); - while(list($level, $points, $info) = SQL_FETCHROW($result)) + while (list($level, $points, $info) = SQL_FETCHROW($result)) { $prices['level'][] = $level; $prices['points'][] = $points; @@ -514,10 +514,8 @@ function RALLYE_LOAD_PRICES_ARRAY($rallye) // function RALLYE_LOAD_USERS_ARRAY ($rallye) { - global $_CONFIG; - // Fix zero points to 0.00000 - if (getConfig('ref_payout') == "0") $_CONFIG['ref_payout'] = "0.00000"; + if (getConfig('ref_payout') == "0") setConfigEntry('ref_payout', "0.00000"); // Init multi array $users = array( @@ -527,7 +525,7 @@ function RALLYE_LOAD_USERS_ARRAY ($rallye) { ); // Load users uid old points earned - $result_user = SQL_QUERY_ESC("SELECT userid, refs, curr_points FROM `{!MYSQL_PREFIX!}_rallye_users` WHERE rallye_id=%s ORDER BY userid", + $result_user = SQL_QUERY_ESC("SELECT userid, refs, curr_points FROM `{!_MYSQL_PREFIX!}_rallye_users` WHERE rallye_id=%s ORDER BY userid", array(bigintval($rallye)), __FILE__, __LINE__); while (list($uid, $refs, $cpoints) = SQL_FETCHROW($result_user)) { // Load current ref count @@ -535,10 +533,10 @@ function RALLYE_LOAD_USERS_ARRAY ($rallye) { // Points of ref's $result_ref = SQL_QUERY_ESC("SELECT DISTINCT SUM(p.points) -FROM `{!MYSQL_PREFIX!}_user_points` AS p -LEFT JOIN `{!MYSQL_PREFIX!}_user_data` AS d +FROM `{!_MYSQL_PREFIX!}_user_points` AS p +LEFT JOIN `{!_MYSQL_PREFIX!}_user_data` AS d ON p.userid=d.userid -WHERE d.status='CONFIRMED' AND d.max_mails > 0 AND d.mails_confirmed >= %s AND p.ref_depth=1 AND p.points > 0 AND d.userid=%s", +WHERE d.`status`='CONFIRMED' AND d.max_mails > 0 AND d.mails_confirmed >= %s AND p.ref_depth=1 AND p.points > 0 AND d.userid=%s", array(getConfig('ref_payout'), bigintval($uid)), __FILE__, __LINE__); list($refpoints) = SQL_FETCHROW($result_ref); SQL_FREERESULT($result_ref); @@ -579,7 +577,7 @@ WHERE d.status='CONFIRMED' AND d.max_mails > 0 AND d.mails_confirmed >= %s AND p // function RALLYE_LIST_WINNERS ($rallye, $default=0) { // First check how many prices are set - $result_prices = SQL_QUERY_ESC("SELECT id FROM `{!MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s ORDER BY price_level", + $result_prices = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s ORDER BY price_level", array(bigintval($rallye)), __FILE__, __LINE__); $prices = SQL_NUMROWS($result_prices); SQL_FREERESULT($result_prices); @@ -595,7 +593,7 @@ function RALLYE_LIST_WINNERS ($rallye, $default=0) { // Check status // active = 1: account is still confirmed // active = 0: account is deleted or locked - $result_active = SQL_QUERY_ESC("SELECT COUNT(userid) FROM `{!MYSQL_PREFIX!}_user_data` WHERE userid=%s AND status='CONFIRMED' LIMIT 1", + $result_active = SQL_QUERY_ESC("SELECT COUNT(userid) FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s AND `status`='CONFIRMED' LIMIT 1", array(bigintval($DATA['uid'][$idx])), __FILE__, __LINE__); list($active) = SQL_FETCHROW($result_active); SQL_FREERESULT($result_active); @@ -654,14 +652,14 @@ function RALLYE_DELETE_EXPIRED_RALLYES() // Check for expired rallyes $EXPIRE = getConfig('one_day') * 3; // @TODO The hard-coded value... $result_rallye = SQL_QUERY_ESC("SELECT id, title, start_time, end_time -FROM `{!MYSQL_PREFIX!}_rallye_data` +FROM `{!_MYSQL_PREFIX!}_rallye_data` WHERE end_time <= (UNIX_TIMESTAMP() - %s) AND expired='Y'", array($EXPIRE), __FILE__, __LINE__); if (SQL_NUMROWS($result_rallye) > 0) { // Expire found rallyes and notify admin - while(list($id, $title, $start, $end) = SQL_FETCHROW($result_rallye)) + while (list($id, $title, $start, $end) = SQL_FETCHROW($result_rallye)) { // Prepare data for mail template $DATA['title'] = $title; @@ -673,17 +671,17 @@ WHERE end_time <= (UNIX_TIMESTAMP() - %s) AND expired='Y'", SEND_ADMIN_NOTIFICATION(RALLYE_ADMIN_PURGED.": ".$title, "admin_rallye_purged", "", 0); // Purge whole rallye - SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!MYSQL_PREFIX!}_rallye_data` WHERE id=%s LIMIT 1", + SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_rallye_data` WHERE id=%s LIMIT 1", array(bigintval($id)), __FILE__, __LINE__); - SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s LIMIT 1", + SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s LIMIT 1", array(bigintval($id)), __FILE__, __LINE__); - SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!MYSQL_PREFIX!}_rallye_users` WHERE rallye_id=%s LIMIT 1", + SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_rallye_users` WHERE rallye_id=%s LIMIT 1", array(bigintval($id)), __FILE__, __LINE__); } // Add task - SQL_QUERY_ESC("INSERT INTO `{!MYSQL_PREFIX!}_task_system` (status, task_type, subject, text, task_created) -VALUES ('NEW','RALLYE_PURGED','".RALLYE_ADMIN_PURGED.": %s','".RALLYE_ADMIN_PURGED_TEXT."',UNIX_TIMESTAMP())", + SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_task_system` (status, task_type, subject, text, task_created) +VALUES ('NEW','RALLYE_PURGED','{--RALLYE_ADMIN_PURGED--}: %s','{--RALLYE_ADMIN_PURGED_TEXT--}',UNIX_TIMESTAMP())", array($title), __FILE__, __LINE__); } @@ -695,7 +693,7 @@ function RALLYE_TEMPLATE_SELECTION($name="template", $default="") { // Check templates directory $OUT = ""; $ral = array(); - $BASE = sprintf("%stemplates/%s/html/rallye/", PATH, GET_LANGUAGE()); + $BASE = sprintf("%stemplates/%s/html/rallye/", constant('PATH'), GET_LANGUAGE()); $dir = opendir($BASE); while ($read = readdir($dir)) { @@ -714,23 +712,20 @@ function RALLYE_TEMPLATE_SELECTION($name="template", $default="") closedir($dir); // Do we have found templates which we can link with the new rallye? - if (!empty($ral[0])) - { + if (!empty($ral[0])) { // Generate selection box for all found templates + // @TODO Rewrite this to our API function $OUT = "\n"; - } - else - { + } else { // No rallye templates found - $OUT = RALLYE_NO_TEMPLATES_FOUND; + $OUT = getMessage('RALLYE_NO_TEMPLATES_FOUND'); } // Return selection @@ -738,21 +733,19 @@ function RALLYE_TEMPLATE_SELECTION($name="template", $default="") } // function RALLYE_GET_REFCOUNT($uid, $old=0) { - global $cacheArray; - // Check current refs if (GET_EXT_VERSION("cache") >= "0.1.2") { // Get refs from cache $cnt = 0; - foreach ($cacheArray['refsystem']['userid'] as $id => $u_id) { + foreach ($GLOBALS['cache_array']['refsystem']['userid'] as $id => $uid) { // Do we have a ref for this user? - //* DEBUG: */ echo "id={$id},u_id={$u_id},uid={$uid},old={$old},level={$cacheArray['refsystem']['level'][$id]}
\n"; - if (($u_id == $uid) && ($cacheArray['refsystem']['level'][$id] == 1)) { + //* DEBUG: */ echo "id={$id},uid={$uid},uid={$uid},old={$old},level={$GLOBALS['cache_array']['refsystem']['level'][$id]}
\n"; + if (($uid == $uid) && ($GLOBALS['cache_array']['refsystem']['level'][$id] == 1)) { //* DEBUG: */ echo "uid matches!
\n"; - foreach ($cacheArray['ref_depths']['level'] as $level) { - if (($level == $cacheArray['refsystem']['level'][$id]) && ($level == 1)) { + foreach ($GLOBALS['cache_array']['ref_depths']['level'] as $level) { + if (($level == $GLOBALS['cache_array']['refsystem']['level'][$id]) && ($level == 1)) { // Level does exist so abort here - $cnt = $cacheArray['refsystem']['counter'][$id]; + $cnt = $GLOBALS['cache_array']['refsystem']['counter'][$id]; //* DEBUG: */ echo "*".$uid."/".$cnt."*
"; break; } elseif ($level > 1) { @@ -766,7 +759,7 @@ function RALLYE_GET_REFCOUNT($uid, $old=0) { } } //* DEBUG: */ echo "
";
-		//* DEBUG: */ print_r($cacheArray['refsystem']);
+		//* DEBUG: */ print_r($GLOBALS['cache_array']['refsystem']);
 		//* DEBUG: */ echo "
"; //* DEBUG: */ die(); @@ -781,8 +774,8 @@ function RALLYE_GET_REFCOUNT($uid, $old=0) { } else { // Load current refs from database $result_ref = SQL_QUERY_ESC("SELECT DISTINCT SUM(s.counter) AS cnt -FROM `{!MYSQL_PREFIX!}_refsystem` AS s -LEFT JOIN `{!MYSQL_PREFIX!}_refdepths` AS d +FROM `{!_MYSQL_PREFIX!}_refsystem` AS s +LEFT JOIN `{!_MYSQL_PREFIX!}_refdepths` AS d ON s.level=d.level WHERE s.userid=%s AND s.level=1", array(bigintval($uid)), __FILE__, __LINE__); list($cnt) = SQL_FETCHROW($result_ref);