X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=0.2.1%2Finc%2Fdb%2Flib-mysql3.php;h=5d2cfd9cff4af3844c1da9e6dfd6eea876abc2c5;hp=3c8d2fbb6d9a91a553e732d45a61ceed76c70536;hb=4ac856c74ab07fc19ab64039904f2075c8f35b40;hpb=2408c1599f73859fe4a2938e87bc080b9dcb9cca
diff --git a/0.2.1/inc/db/lib-mysql3.php b/0.2.1/inc/db/lib-mysql3.php
index 3c8d2fbb6d..5d2cfd9cff 100644
--- a/0.2.1/inc/db/lib-mysql3.php
+++ b/0.2.1/inc/db/lib-mysql3.php
@@ -1,274 +1,274 @@
-
-".MYSQL_QUERY_STRING."
-".$sql_string);
-
- if (($CSS != "1") && ($CSS != "-1") && (DEBUG_MODE) && (DEBUG_SQL))
- {
- //
- // Debugging stuff...
- //
- $fp = @fopen(PATH."debug.log", 'a') or mxchange_die("Cannot write debug.log!");
- if (!isset($OK)) {
- // Write first entry
- fwrite($fp, "Module=".$GLOBALS['module']."\n");
- $OK = true;
- }
- fwrite($fp, $F."(LINE=".$L."|NUM=".SQL_NUMROWS($result)."|AFFECTED=".SQL_AFFECTEDROWS()."): ".str_replace('\r', '', str_replace('\n', " ", $sql_string))."\n");
- fclose($fp);
- }
-
- // Count DB hits
- if (!isset($CONFIG['db_hits']))
- {
- // Count in dummy variable
- $CONFIG['db_hits'] = 0;
- }
- else
- {
- // Count to config array
- $CONFIG['db_hits']++;
- }
- return $result;
-}
-
-// SQL num rows
-function SQL_NUMROWS($result)
-{
- if ($result != false)
- {
- $lines = @mysql_num_rows($result);
- if (empty($lines)) $lines = "0";
-
- }
- else
- {
- // No resource given, no lines found!
- $lines = "0";
- }
- return $lines;
-}
-
-// SQL affected rows
-function SQL_AFFECTEDROWS($lnk="x", $F="dummy", $L="dummy")
-{
- global $link;
- // $lnk will be ignored for now!
- $lines = @mysql_affected_rows($link);
- return $lines;
-}
-
-// SQL fetch row
-function SQL_FETCHROW($result)
-{
- $DATA = array();
- $DATA = @mysql_fetch_row($result);
- return $DATA;
-}
-
-// SQL fetch array
-function SQL_FETCHARRAY($res=false, $nr=0, $remove_numerical=true)
-{
- // Is a result resource set?
- if (!$res) return false;
-
- // Initialize array
- $row = array();
-
- // Load row from database
- $row = @mysql_fetch_array($res);
-
- // Return only arrays here
- if (is_array($row))
- {
- // Shall we remove numerical data here automatically?
- if ($remove_numerical)
- {
- // So let's remove all numerical elements to save memory!
- $max = count($row);
- for ($idx = 0; $idx < ($max / 2); $idx++)
- {
- // Remove entry
- unset($row[$idx]);
- }
- }
-
- // Return row
- return $row;
- }
- else
- {
- // Return a false here...
- return false;
- }
-}
-
-// SQL result
-function SQL_RESULT($res, $row, $field)
-{
- $result = @mysql_result($res, $row, $field);
- return $result;
-}
-// SQL connect
-function SQL_CONNECT($host, $login, $password, $F, $L)
-{
- $connect = @mysql_connect($host, $login, $password) or ADD_FATAL($F." (".$L."):".mysql_error());
- return $connect;
-}
-// SQL select database
-function SQL_SELECT_DB($DB, $link, $F, $L)
-{
- $DB = @mysql_select_db($DB, $link) or ADD_FATAL($F." (".$L."):".mysql_error());
- return $DB;
-}
-// SQL close link
-function SQL_CLOSE($link, $F, $L)
-{
- global $CONFIG, $CACHE, $CFG_CACHE;
- if ((GET_EXT_VERSION("cache") >= "0.0.7") && (isset($CONFIG['db_hits'])) && (isset($CONFIG['cache_hits'])) && (is_object($CACHE)))
- {
- // Update counter for db/cache
- $result = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_config SET db_hits='".$CONFIG['db_hits']."', cache_hits='".$CONFIG['cache_hits']."' WHERE config='0' LIMIT 1", __FILE__, __LINE__);
-
- // Update cache here
- if (GET_EXT_VERSION("cache") >= "0.1.2")
- {
- if ($CACHE->cache_file("config", true))
- {
- // Replace data
- $CACHE->cache_replace("cache_hits", $CONFIG['cache_hits'], "0", $CFG_CACHE);
- $CACHE->cache_replace("db_hits" , $CONFIG['db_hits'] , "0", $CFG_CACHE);
- }
- }
- }
-
- // Close database link
- $close = @mysql_close($link) or ADD_FATAL($F." (".$L."):".mysql_error());
- return $close;
-}
-// SQL free result
-function SQL_FREERESULT($result)
-{
- $res = @mysql_free_result($result);
- return $res;
-}
-// SQL string escaping
-function SQL_QUERY_ESC($qstring, $data, $file, $line, $run=true, $strip=true)
-{
- global $link;
- $eval = "\$query = sprintf(\"".$qstring."\"";
- foreach ($data as $var)
- {
- if (!empty($var))
- {
- if ($strip) {
- $eval .= ", SQL_ESCAPE(\"".strip_tags($var)."\")";
- } else {
- $eval .= ", SQL_ESCAPE(\"".$var."\")";
- }
- }
- else
- {
- $eval .= ", ''";
- }
- }
- $eval .= ");";
- //
- // Debugging
- //
- //$fp = fopen(PATH."escape_debug.log", 'a') or mxchange_die("Cannot write debug.log!");
- //fwrite($fp, $file."(".$line."): ".str_replace('\r', '', str_replace('\n', " ", $eval))."\n");
- //fclose($fp);
- eval($eval);
- if ($run)
- {
- // Run SQL query (default)
- return SQL_QUERY($query, $file, $line);
- }
- else
- {
- // Return secured string
- return $query;
- }
-}
-// Get ID from last INSERT command
-function SQL_INSERTID()
-{
- return @mysql_insert_id();
-}
-// Escape a string for the database
-function SQL_ESCAPE($str)
-{
- global $link;
- if (!is_resource($link)) {
- // Fall-back to addslashes() when there is no link
- return addslashes($str);
- }
-
- if (function_exists('mysql_real_escape_string')) {
- // The new and improved version
- return mysql_real_escape_string($str, $link);
- } elseif (function_exists('mysql_escape_string')) {
- // The obsulete function
- return mysql_escape_string($str, $link);
- } else {
- // If nothing else works
- return addslashes($str);
- }
-}
-// SELECT query string from table, columns and so on... ;-)
-function SQL_RESULT_FROM_ARRAY ($table, array $columns, $idRow, $id) {
- // Prepare the SQL statement
- $SQL = "SELECT ".implode(", ", $columns)." FROM "._MYSQL_PREFIX."_".$table." WHERE ".$idRow."=%d LIMIT 1";
-
- // Return the result
- return SQL_QUERY_ESC($SQL, array(bigintval($id)), __FILE__, __LINE__);
-}
-//
-?>
+
+".MYSQL_QUERY_STRING."
+".$sql_string);
+
+ if (($CSS != "1") && ($CSS != "-1") && (DEBUG_MODE) && (DEBUG_SQL))
+ {
+ //
+ // Debugging stuff...
+ //
+ $fp = @fopen(PATH."debug.log", 'a') or mxchange_die("Cannot write debug.log!");
+ if (!isset($OK)) {
+ // Write first entry
+ fwrite($fp, "Module=".$GLOBALS['module']."\n");
+ $OK = true;
+ }
+ fwrite($fp, $F."(LINE=".$L."|NUM=".SQL_NUMROWS($result)."|AFFECTED=".SQL_AFFECTEDROWS()."): ".str_replace('\r', '', str_replace('\n', " ", $sql_string))."\n");
+ fclose($fp);
+ }
+
+ // Count DB hits
+ if (!isset($CONFIG['db_hits']))
+ {
+ // Count in dummy variable
+ $CONFIG['db_hits'] = 0;
+ }
+ else
+ {
+ // Count to config array
+ $CONFIG['db_hits']++;
+ }
+ return $result;
+}
+
+// SQL num rows
+function SQL_NUMROWS($result)
+{
+ if ($result != false)
+ {
+ $lines = @mysql_num_rows($result);
+ if (empty($lines)) $lines = "0";
+
+ }
+ else
+ {
+ // No resource given, no lines found!
+ $lines = "0";
+ }
+ return $lines;
+}
+
+// SQL affected rows
+function SQL_AFFECTEDROWS($lnk="x", $F="dummy", $L="dummy")
+{
+ global $link;
+ // $lnk will be ignored for now!
+ $lines = @mysql_affected_rows($link);
+ return $lines;
+}
+
+// SQL fetch row
+function SQL_FETCHROW($result)
+{
+ $DATA = array();
+ $DATA = @mysql_fetch_row($result);
+ return $DATA;
+}
+
+// SQL fetch array
+function SQL_FETCHARRAY($res=false, $nr=0, $remove_numerical=true)
+{
+ // Is a result resource set?
+ if (!$res) return false;
+
+ // Initialize array
+ $row = array();
+
+ // Load row from database
+ $row = @mysql_fetch_array($res);
+
+ // Return only arrays here
+ if (is_array($row))
+ {
+ // Shall we remove numerical data here automatically?
+ if ($remove_numerical)
+ {
+ // So let's remove all numerical elements to save memory!
+ $max = count($row);
+ for ($idx = 0; $idx < ($max / 2); $idx++)
+ {
+ // Remove entry
+ unset($row[$idx]);
+ }
+ }
+
+ // Return row
+ return $row;
+ }
+ else
+ {
+ // Return a false here...
+ return false;
+ }
+}
+
+// SQL result
+function SQL_RESULT($res, $row, $field)
+{
+ $result = @mysql_result($res, $row, $field);
+ return $result;
+}
+// SQL connect
+function SQL_CONNECT($host, $login, $password, $F, $L)
+{
+ $connect = @mysql_connect($host, $login, $password) or ADD_FATAL($F." (".$L."):".mysql_error());
+ return $connect;
+}
+// SQL select database
+function SQL_SELECT_DB($DB, $link, $F, $L)
+{
+ $DB = @mysql_select_db($DB, $link) or ADD_FATAL($F." (".$L."):".mysql_error());
+ return $DB;
+}
+// SQL close link
+function SQL_CLOSE($link, $F, $L)
+{
+ global $CONFIG, $CACHE, $CFG_CACHE;
+ if ((GET_EXT_VERSION("cache") >= "0.0.7") && (isset($CONFIG['db_hits'])) && (isset($CONFIG['cache_hits'])) && (is_object($CACHE)))
+ {
+ // Update counter for db/cache
+ $result = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_config SET db_hits='".$CONFIG['db_hits']."', cache_hits='".$CONFIG['cache_hits']."' WHERE config='0' LIMIT 1", __FILE__, __LINE__);
+
+ // Update cache here
+ if (GET_EXT_VERSION("cache") >= "0.1.2")
+ {
+ if ($CACHE->cache_file("config", true))
+ {
+ // Replace data
+ $CACHE->cache_replace("cache_hits", $CONFIG['cache_hits'], "0", $CFG_CACHE);
+ $CACHE->cache_replace("db_hits" , $CONFIG['db_hits'] , "0", $CFG_CACHE);
+ }
+ }
+ }
+
+ // Close database link
+ $close = @mysql_close($link) or ADD_FATAL($F." (".$L."):".mysql_error());
+ return $close;
+}
+// SQL free result
+function SQL_FREERESULT($result)
+{
+ $res = @mysql_free_result($result);
+ return $res;
+}
+// SQL string escaping
+function SQL_QUERY_ESC($qstring, $data, $file, $line, $run=true, $strip=true)
+{
+ global $link;
+ $eval = "\$query = sprintf(\"".$qstring."\"";
+ foreach ($data as $var)
+ {
+ if (!empty($var))
+ {
+ if ($strip) {
+ $eval .= ", SQL_ESCAPE(\"".strip_tags($var)."\")";
+ } else {
+ $eval .= ", SQL_ESCAPE(\"".$var."\")";
+ }
+ }
+ else
+ {
+ $eval .= ", ''";
+ }
+ }
+ $eval .= ");";
+ //
+ // Debugging
+ //
+ //$fp = fopen(PATH."escape_debug.log", 'a') or mxchange_die("Cannot write debug.log!");
+ //fwrite($fp, $file."(".$line."): ".str_replace('\r', '', str_replace('\n', " ", $eval))."\n");
+ //fclose($fp);
+ eval($eval);
+ if ($run)
+ {
+ // Run SQL query (default)
+ return SQL_QUERY($query, $file, $line);
+ }
+ else
+ {
+ // Return secured string
+ return $query;
+ }
+}
+// Get ID from last INSERT command
+function SQL_INSERTID()
+{
+ return @mysql_insert_id();
+}
+// Escape a string for the database
+function SQL_ESCAPE($str)
+{
+ global $link;
+ if (!is_resource($link)) {
+ // Fall-back to addslashes() when there is no link
+ return addslashes($str);
+ }
+
+ if (function_exists('mysql_real_escape_string')) {
+ // The new and improved version
+ return mysql_real_escape_string($str, $link);
+ } elseif (function_exists('mysql_escape_string')) {
+ // The obsulete function
+ return mysql_escape_string($str, $link);
+ } else {
+ // If nothing else works
+ return addslashes($str);
+ }
+}
+// SELECT query string from table, columns and so on... ;-)
+function SQL_RESULT_FROM_ARRAY ($table, $columns, $idRow, $id) {
+ // Prepare the SQL statement
+ $SQL = "SELECT ".implode(", ", $columns)." FROM "._MYSQL_PREFIX."_".$table." WHERE ".$idRow."=%d LIMIT 1";
+
+ // Return the result
+ return SQL_QUERY_ESC($SQL, array(bigintval($id)), __FILE__, __LINE__);
+}
+//
+?>