Copy code The code is as follows:
$cfg_dbhost ='localhost';//mysql host
$cfg_dbname ='sq_test';//Database name
$cfg_dbuser ='root';//Database user name
$cfg_dbpwd ='jb51.net';//Database user password
$cfg_db_language =' utf8';//Database encoding
class dbmysql{
public static $dbhost = 'localhost';
public static $dbname;
public static $dbuser = 'root';
public static $dbpass;
public static $charset = 'utf8';
public static $DB = null;
public $querycount = 0;
public function __construct()
{
self::$dbhost = $GLOBALS['cfg_dbhost'];
self::$dbname = $GLOBALS['cfg_dbname'];
self::$dbuser = $GLOBALS['cfg_dbuser '];
self::$dbpass = $GLOBALS['cfg_dbpwd'];
self::$charset= $GLOBALS['cfg_db_language'];
self::connect();
}
public function connect(){
self::$DB=mysql_connect(self::$dbhost,self::$dbuser,self::$dbpass);
if(!self::$ DB){
self::sqlError('Unable to connect to the server!'.self::mysqlerror);exit("Unable to connect to the server!");;
}
if(!mysql_select_db(self:: $dbname)){
self::sqlError('Unable to connect to database ('.self::$dbname.')!'.self::mysqlerror);exit("Unable to connect to database!");
}
mysql_query("SET NAMES '".self::$charset."', character_set_client=binary, sql_mode='';",self::$DB);
}
private function mysqlerror(){
return mysql_error();
}
public function getTablesName(){
$res = mysql_query('SHOW TABLES FROM '.self::$dbname,self ::$DB);
$tables=array();
while ($row=mysql_fetch_row($res))$tables[]=$row[0];
mysql_free_result($res);
return $tables;
}
public function getFields($table){
$res=mysql_query('DESCRIBE '.$table,self::$DB);
$tables= array();
while($row=mysql_fetch_row($res))$tables[]=$row[0];
mysql_free_result($res);
return $tables;
}
public function fetch_array($sql){
$res=mysql_query($sql,self::$DB);
$r=mysql_fetch_array($res);
mysql_free_result($res );
return $r;
}
public function fetch_assoc($sql){
$q3=mysql_query($sql,self::$DB); $ra=array( );
while($data=mysql_fetch_assoc($q3)){
$ra[]=$data;
}
mysql_free_result($q3);
return $ra;
}
private function sqlError($message='',$info ='',$sql=''){//Save error message to file
echo "{".$message."
DATE: ".date('Y-n-j H:i:s')."
ERROR: ".$info."
SQL: ".$sql."< br/>}
";
}
public function close(){
self::$DB =null;
}
public function __destruct()
{
self::close();
}
}
/*---class end*/
function makedir($dirpath){
if(!$dirpath) return 0;
$dirpath=str_replace("\","/",$dirpath); $mdir="";
foreach(explode("/",$dirpath ) as $val){
$mdir.=$val."/";
if($val==".."||$val==".")continue;
if( !is_dir($mdir)&&!file_exists($mdir)){
if(!@mkdir($mdir,0755)){
exit("Failed to create directory [".$mdir."]." );
}
}
}
return true;
}
function delDirAndFile($dirName){
if($handle=opendir($dirName) ){
while(false!==($item = readdir($handle))){
if($item !="."&&$item!=".."){
if (is_dir( "$dirName/$item")){
delDirAndFile( "$dirName/$item");
}else{ unlink("$dirName/$item"); }
}
}
closedir( $handle );
if( rmdir( $dirName ) )echo "Directory deleted successfully: $dirName
n";
}
}
function filein($filename="databak/",$table='',$mysql=''){
$fp = fopen($filename.'/'.$table.'.sql', 'w');
fputs($fp,$mysql);
fclose($fp);
}
header("Content-Type:text/html;charset=utf -8");
$db=new dbmysql();
$table=$db->getTablesName();
$filename="databak/" .date("Ymd");
$url=getcwd()."/databak/";
$handle = opendir($url);
while(false!==($file = readdir ($handle))){
if ($file!="."&&$file!=".."&&is_dir($url."/".$file)) {
if(date(" Ymd")-$file>5){delDirAndFile($url."/".$file);};
}
}
makedir($filename);
foreach( $table as $t){
$s1=$db->fetch_array("show create table `$t`");
$mysql="/*Time:".date("Y-m-d H: i:s")." */rnDROP TABLE IF EXISTS `$t`;rn".$s1['Create Table'].";rnrn";
$a1=$db->fetch_assoc("select * from `$t`");
foreach ($a1 as $data){
$vals=array_values($data);
$vals=array_map('addslashes',$vals);
$vals=join("','",$vals);
$vals="'".$vals."'";
$mysql.="INSERT INTO `$t` VALUES ( $vals);rn";
}
$mysql.="rn";
filein($filename,$t,$mysql);
}
echo "data The backup is successful and the backup file ".getcwd()."/".$filename."/
The program automatically cleans the backups from 5 days ago";
?>
http://www.bkjia.com/PHPjc/322039.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/322039.htmlTechArticleCopy the code as follows: ?php $cfg_dbhost ='localhost';//mysql host $cfg_dbname ='sq_test' ;//Database name $cfg_dbuser ='root';//Database user name $cfg_dbpwd ='jb51.net';//Database...
Statement:The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn