From 4516cbe5d6ba14430f2279916379f10ef1ef73f1 Mon Sep 17 00:00:00 2001 From: Philip Häusler Date: Tue, 4 Nov 2014 11:22:32 +0100 Subject: renamed mysql provider to mysqli, updated system requirements, fixes #145 --- includes/mysql_provider.php | 186 ------------------------------------------- includes/mysqli_provider.php | 186 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 186 insertions(+), 186 deletions(-) delete mode 100644 includes/mysql_provider.php create mode 100644 includes/mysqli_provider.php (limited to 'includes') diff --git a/includes/mysql_provider.php b/includes/mysql_provider.php deleted file mode 100644 index 9f901a40..00000000 --- a/includes/mysql_provider.php +++ /dev/null @@ -1,186 +0,0 @@ -close(); -} - -/** - * Start new transaction. - */ -function sql_transaction_start() { - global $sql_nested_transaction_level; - - if ($sql_nested_transaction_level ++ == 0) - return sql_query("BEGIN"); - else - return true; -} - -/** - * Commit transaction. - */ -function sql_transaction_commit() { - global $sql_nested_transaction_level; - - if (-- $sql_nested_transaction_level == 0) - return sql_query("COMMIT"); - else - return true; -} - -/** - * Stop transaction, revert database. - */ -function sql_transaction_rollback() { - global $sql_nested_transaction_level; - - if (-- $sql_nested_transaction_level == 0) - return sql_query("ROLLBACK"); - else - return true; -} - -/** - * Logs an sql error. - * - * @param string $message - * @return false - */ -function sql_error($message) { - sql_close(); - - $message = trim($message) . "\n"; - $message .= debug_string_backtrace() . "\n"; - - error_log('mysql_provider error: ' . $message); - - return false; -} - -/** - * Connect to mysql server. - * - * @param string $host - * Host - * @param string $user - * Username - * @param string $pass - * Password - * @param string $db - * DB to select - * @return mysqli The connection handler - */ -function sql_connect($host, $user, $pass, $db) { - global $sql_connection; - - $sql_connection = new mysqli($host, $user, $pass, $db); - if ($sql_connection->connect_errno) - return sql_error("Unable to connect to MySQL: " . $sql_connection->connect_error); - - $result = $sql_connection->query("SET CHARACTER SET utf8;"); - if (! $result) - return sql_error("Unable to set utf8 character set (" . $sql_connection->errno . ") " . $sql_connection->error); - - $result = $sql_connection->set_charset('utf8'); - if (! $result) - return sql_error("Unable to set utf8 names (" . $sql_connection->errno . ") " . $sql_connection->error); - - return $sql_connection; -} - -/** - * Change the selected db in current mysql-connection. - * - * @param - * $db_name - * @return bool true on success, false on error - */ -function sql_select_db($db_name) { - global $sql_connection; - if (! $sql_connection->select_db($db_name)) - return sql_error("No database selected."); - return true; -} - -/** - * MySQL SELECT query - * - * @param string $query - * @return Result array or false on error - */ -function sql_select($query) { - global $sql_connection; - - $result = $sql_connection->query($query); - if ($result) { - $data = array(); - while ($line = $result->fetch_assoc()) - array_push($data, $line); - return $data; - } else - return sql_error("MySQL-query error: " . $query . " (" . $sql_connection->errno . ") " . $sql_connection->error); -} - -/** - * MySQL execute a query - * - * @param string $query - * @return mysqli_result boolean resource or false on error - */ -function sql_query($query) { - global $sql_connection; - - $result = $sql_connection->query($query); - if ($result) { - return $result; - } else - return sql_error("MySQL-query error: " . $query . " (" . $sql_connection->errno . ") " . $sql_connection->error); -} - -/** - * Returns last inserted id. - * - * @return int - */ -function sql_id() { - global $sql_connection; - return $sql_connection->insert_id; -} - -/** - * Escape a string for a sql query. - * - * @param string $query - * @return string - */ -function sql_escape($query) { - global $sql_connection; - return $sql_connection->real_escape_string($query); -} - -/** - * Count query result lines. - * - * @param string $query - * @return int Count of result lines - */ -function sql_num_query($query) { - global $sql_connection; - return sql_query($query)->num_rows; -} - -function sql_select_single_col($query) { - $result = sql_select($query); - return array_map('array_shift', $result); -} - -function sql_select_single_cell($query) { - return array_shift(array_shift(sql_select($query))); -} - -?> diff --git a/includes/mysqli_provider.php b/includes/mysqli_provider.php new file mode 100644 index 00000000..9f901a40 --- /dev/null +++ b/includes/mysqli_provider.php @@ -0,0 +1,186 @@ +close(); +} + +/** + * Start new transaction. + */ +function sql_transaction_start() { + global $sql_nested_transaction_level; + + if ($sql_nested_transaction_level ++ == 0) + return sql_query("BEGIN"); + else + return true; +} + +/** + * Commit transaction. + */ +function sql_transaction_commit() { + global $sql_nested_transaction_level; + + if (-- $sql_nested_transaction_level == 0) + return sql_query("COMMIT"); + else + return true; +} + +/** + * Stop transaction, revert database. + */ +function sql_transaction_rollback() { + global $sql_nested_transaction_level; + + if (-- $sql_nested_transaction_level == 0) + return sql_query("ROLLBACK"); + else + return true; +} + +/** + * Logs an sql error. + * + * @param string $message + * @return false + */ +function sql_error($message) { + sql_close(); + + $message = trim($message) . "\n"; + $message .= debug_string_backtrace() . "\n"; + + error_log('mysql_provider error: ' . $message); + + return false; +} + +/** + * Connect to mysql server. + * + * @param string $host + * Host + * @param string $user + * Username + * @param string $pass + * Password + * @param string $db + * DB to select + * @return mysqli The connection handler + */ +function sql_connect($host, $user, $pass, $db) { + global $sql_connection; + + $sql_connection = new mysqli($host, $user, $pass, $db); + if ($sql_connection->connect_errno) + return sql_error("Unable to connect to MySQL: " . $sql_connection->connect_error); + + $result = $sql_connection->query("SET CHARACTER SET utf8;"); + if (! $result) + return sql_error("Unable to set utf8 character set (" . $sql_connection->errno . ") " . $sql_connection->error); + + $result = $sql_connection->set_charset('utf8'); + if (! $result) + return sql_error("Unable to set utf8 names (" . $sql_connection->errno . ") " . $sql_connection->error); + + return $sql_connection; +} + +/** + * Change the selected db in current mysql-connection. + * + * @param + * $db_name + * @return bool true on success, false on error + */ +function sql_select_db($db_name) { + global $sql_connection; + if (! $sql_connection->select_db($db_name)) + return sql_error("No database selected."); + return true; +} + +/** + * MySQL SELECT query + * + * @param string $query + * @return Result array or false on error + */ +function sql_select($query) { + global $sql_connection; + + $result = $sql_connection->query($query); + if ($result) { + $data = array(); + while ($line = $result->fetch_assoc()) + array_push($data, $line); + return $data; + } else + return sql_error("MySQL-query error: " . $query . " (" . $sql_connection->errno . ") " . $sql_connection->error); +} + +/** + * MySQL execute a query + * + * @param string $query + * @return mysqli_result boolean resource or false on error + */ +function sql_query($query) { + global $sql_connection; + + $result = $sql_connection->query($query); + if ($result) { + return $result; + } else + return sql_error("MySQL-query error: " . $query . " (" . $sql_connection->errno . ") " . $sql_connection->error); +} + +/** + * Returns last inserted id. + * + * @return int + */ +function sql_id() { + global $sql_connection; + return $sql_connection->insert_id; +} + +/** + * Escape a string for a sql query. + * + * @param string $query + * @return string + */ +function sql_escape($query) { + global $sql_connection; + return $sql_connection->real_escape_string($query); +} + +/** + * Count query result lines. + * + * @param string $query + * @return int Count of result lines + */ +function sql_num_query($query) { + global $sql_connection; + return sql_query($query)->num_rows; +} + +function sql_select_single_col($query) { + $result = sql_select($query); + return array_map('array_shift', $result); +} + +function sql_select_single_cell($query) { + return array_shift(array_shift(sql_select($query))); +} + +?> -- cgit v1.2.3-70-g09d2