<?
<?
//xMySQL Class is a free MySQL class wrote in PHP for MySQL databases managing.
//It supports languages managing.
//Class released on AuthWare license - it means, that whenever you change this code, basic author [Ex-Toxic] must be included.
//Have fun!
class MySQL
{
//Connection variables
public $host='localhost';
public $user='root';
public $pass='';
public $database='data';
public $port='3306';
//Variables for managing
public $_setDisplayErrors=0; //This variable turns on displaying custom errors
public $_setCritical=0; //This variable puts EVERY error into DIE() function
public $_setCreateErrorLog=1; //This variable creates errors in _$user@$host.txt file
public $_setLanguage='eng'; //This variable sets language for xMySQL class
public $_setLanguageDir='lang/';
public $_isConnected=false; //This variable returns TRUE if connection's establishes and FALSE when connection's closed
private function _language() {
@$file=fopen($this->_setLanguageDir.$this->_setLanguage.'.php', 'r');
if (!$file) { die("Cannot find language file for xMySQL Class.");
}
}
public function Log($text) {
if ($this->_setCreateErrorLog==1) {
$today = date("m.d.y H:i:s");
@$file=fopen('error_log.txt', 'a');
fwrite($file, '
['.$today.'] '.$text);
fclose($file);
}
}
public function Error($_errorIndex) {
if ($this->_setDisplayErrors>0) {
$this->_language();
include($this->_setLanguageDir.$this->_setLanguage.'.php');
if ($this->_setCritical>0) { die($Display[$_errorIndex]); } else {
echo $Display[$_errorIndex];
}
$this->Log($Display[$_errorIndex]);
}
}
public function xConnect() {
if ($this->_isConnected == true) { $this->Error(0); } else {
@$connect=mysql_connect($this->host.':'.$this->port,$user,$pass);
if (!$connect) { $this->Error(1); } else {
@$getDatabase=mysql_select_db($this->database, $connect);
if(!$getDatabase) { $this->Error(2); } else { $this->isConnected = true; }
}
}
}
public function xShutdown($connection) {
if ($this->_isConnected==true) { mysql_close($connection); } else { $this->Error(6); }
}
public function xQuery($queryString) {
$this->xConnect();
if (mysql_query($queryString)) { return true; } else { return false; $this->Error(3); }
}
public function xSQL($file) {
if (@!fopen($file, "r")) { $this->Error(7); } else {
$expl_name=explode(".", $file);
if ($expl[1] != "sql") { $this->Error(8); } else {
$getSQLFile = file_get_contents($file);
if (mysql_query($getSQLFile)) { return true; } else { return false; }
}
}
}
public function xRows($query) {
$this->xConnect();
@$getRows=mysql_num_rows($query);
return $getRows;
}
public function xFetch($query, $mode='_FA') {
$this->xConnect();
switch($mode)
{
case '_FA':
@$exec=mysql_fetch_assoc($query);
break;
case '_FR':
@$exec=mysql_fetch_row($query);
break;
case '_FY':
@$exec=mysql_fetch_array($query);
break;
default:
@$exec=mysql_fetch_assoc($query);
break;
}
if ($exec) { return $exec; } else { $this->Error(5); }
}
public function xFree($query) {
@mysql_free_result($query);
}
public function xAffect() {
return mysql_affected_rows();
}
public function xyCreateDB($database_name, $query='')
{
if ($query!='') { if (mysql_create_db($database_name, $query)) { return true; } else { return false; } } else {
if (mysql_create_db($database_name)) { return true; } else { return false; }
}
}
public function xyDropDB($database_name, $query='')
{
if ($query != '') { if (mysql_drop_db($database_name, $query)) { return true; } else { return false; } } else {
if (mysql_drop_db($database_name)) { return true; } else { return false; }
}
}
}
//Wrote and released by Ex-Toxic!
?>
?>