3 set_global_connection();
5 function set_global_connection()
9 if (isset($_SESSION["wa_current_user"]) && $_SESSION["wa_current_user"]->company !='')
10 $db = $_SESSION["wa_current_user"]->get_db_connection();
15 $db_duplicate_error_code = 1062;
17 //DB wrapper functions to change only once for whole application
19 function db_query($sql, $err_msg=null)
21 global $db, $show_sql, $sql_trail, $select_trail;
23 //echo "<br>$sql<br>";
26 echo "<font face=arial size=2 color=000099><b>SQL..</b></font>";
33 $result = mysql_query($sql, $db);
35 if ($select_trail || (strstr($sql, 'SELECT') === false)) {
37 "INSERT INTO ".TB_PREF."sql_trail
38 (`sql`, `result`, `msg`)
39 VALUES(".db_escape($sql).",".($result ? 1 : 0).",
40 ".db_escape($err_msg).")", $db);
45 if (function_exists('xdebug_call_file'))
46 check_db_error('<br>At file '.xdebug_call_file().':'.xdebug_call_line().':<br>'.$err_msg, $sql);
48 check_db_error($err_msg, $sql);
53 function db_fetch_row ($result)
56 return mysql_fetch_row($result);
59 function db_fetch_assoc ($result)
62 return mysql_fetch_assoc($result);
65 function db_fetch ($result)
68 return mysql_fetch_array($result);
71 function db_seek (&$result,$record)
73 mysql_data_seek($result, $record);
76 function db_free_result ($result)
79 mysql_free_result($result);
82 function db_num_rows (&$result)
84 return mysql_num_rows($result);
87 function db_num_fields ($result)
89 return mysql_num_fields($result);
92 function db_escape($value = "", $nullify = false)
94 $value = @htmlspecialchars($value, ENT_COMPAT, $_SESSION['language']->encoding);
96 //reset default if second parameter is skipped
97 $nullify = ($nullify === null) ? (false) : ($nullify);
99 //check for null/unset/empty strings
100 if ((!isset($value)) || (is_null($value)) || ($value === "")) {
101 $value = ($nullify) ? ("NULL") : ("''");
103 if (is_string($value)) {
104 //value is a string and should be quoted; determine best method based on available extensions
105 if (function_exists('mysql_real_escape_string')) {
106 $value = "'" . mysql_real_escape_string($value) . "'";
108 $value = "'" . mysql_escape_string($value) . "'";
110 } else if (!is_numeric($value)) {
111 //value is not a string nor numeric
112 display_error("ERROR: incorrect data type send to sql query");
120 function db_error_no ()
123 return mysql_errno($db);
126 function db_error_msg($conn)
128 return mysql_error($conn);
131 function db_insert_id()
134 return mysql_insert_id($db);
137 function db_num_affected_rows()
140 return mysql_affected_rows($db);