function mysql_config(){
$GLOBALS['global_mysql_querydb_timer'] = 0;
$GLOBALS['global_mysql_querydb_counter'] = 0;
}
function get_querydb_timer(){
global $static_query_timer;
if(isset($static_query_timer))
return $static_query_timer;
else
return $GLOBALS['global_mysql_querydb_timer'];
}
function get_querydb_counter(){
global $static_querydb_count;
if(isset($static_querydb_count)) return $static_querydb_count;
else return $GLOBALS['global_mysql_querydb_counter'];
}
function set_querydb_timer($value){
global $static_query_timer;
if (isset($static_query_timer)) $static_query_timer = $value;
else $GLOBALS['go=global_mysql_querydb_timer'] = $value;
}
function set_querydb_counter($value){
global $static_query_count;
if (isset($static_query_count)) $static_query_count = $value;
else $GLOBALS['go=global_mysql_querydb_counter'] = $value;
}
function set_hostname($value){
$this->dbconfig['hostname'] = $value;
}
function set_username($value){
$this->dbconfig['username'] = $value;
}
function set_password($value){
$this->dbconfig['password'] = $value;
}
function set_database($value){
$this->dbconfig['database'] = $value;
}
function set_collation_connection($value){
$this->dbconfig['collation_connection'] = $value;
}
function set_character_set($value){
$this->dbconfig['character_set'] = $value;
}
function get_configdb(){
return $this->dbconfig;
}
}
class mysql_operator extends mysql_config {
var $link = NULL;
var $result = NULL;
var $mysql_version = NULL;
var $string_error = array();
function set_configdb(&$array_dbconfig){
}
function get_error_smg(){
while (count($this->string_error) -1)
$string_output = '<b>MySQL Error : </b>'.
array_pop($this->string_error).'<br />';
return $string_output;
}
function mysql_operator(&$dbconfig) {
if(is_array($dbconfig))
$this->set_configdb($dbconfig);
else
$this->set_configdb($dbconfig->get_configdb());
}
function set_mysql_version($value){
$this->mysql_version = $value;
}
function get_mysql_version(){
return $this->mysql_version;
}
function opendb($newlink = FALSE) {
$this->link = mysql_connect($this->dbconfig['hostname'],$this->dbconfig['username'],$this->dbconfig['password'],$newlink);
if (!$this->link)
$this->set_error_msg(mysql_errno($this->link).':'.mysql_error($this->link));
if(!empty($this->dbconfig['character_set'])){
$this->querydb("SET CHARACTER SET".$this->dbconfig['character_set'].";");
$this->querydb_counter_decrement();
}
if (empty($this->dbconfig['collation_connection'])){
$this->querydb("SET collation_connection".$this->dbconfig['collation_connection'].";");
$this->querydb_counter_decrement();
}
}
function closedb(){
if (!mysql_close($this->link))
$this->set_error_msg(mysql_error($this->link).':'.mysql_error($this->link));
}
function querydb($string_query) {
$start_time = array_sum(explode(chr(32), microtime()));
$this->result = mysql_query ($string_query);
$end_time = array_sum(explode(chr(32), microtime()));
if (!$this->result)
$this->set_error_msg(mysql_error($this->link).':'.mysql_error($this->link));
$this->querydb_counter_increment();
}
function list_fields($table){
$fields = mysql_list_fields($this->dbconfig['database'], $table, $this->link);
$colums = mysql_num_fields($fields);
for ($i = 0; $i < $columns; $i++)
$array_fields_in_table[$i] = mysql_field_name($fields, $i);
return $array_fields_in_table;
}
function querydb_counter_increment(){
$this->set_querydb_counter($this->get_querydb_counter()+1);
}
function querydb_counter_decrement(){
$this->set_querydb_counter($this->get_querydb_counter()-1);
}
function querydb_transac_begin(){
if($this->get_mysql_version( ) >3)
$this->set_querydb("START TRANSACTION;");
}
function querydb_transac_rollback(){
if($this->get_mysql_version( ) >3)
$this->set_querydb("ROLLBACK;");
}
function querydb_transac_set_autocommit_zero(){
if($this->get_mysql_version( ) >3)
$this->set_querydb("SET AUTOCOMMIT=0;");
}
function querydb_transac_check_for_rollback_or_commit(){
if(!$this->get_resultdb())$this->querydb_transac_rollback();
else $this->querydb_transac_commit();
}
function num_rows_in_table($table, $condition = NULL){
$num_rows = new mysql_operator($this->get_configdb());
$num_rows->opendb();
$num_rows->querydb("SELECT COUNT(*) FROM $table $condition;");
$num_rows->closedb();
return mysql_result($num_rows->get_resultdb(), 0);
}
function has_data_in_table($table, $field, $value) {
$value = trim($value);