Copy the 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 the 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."
}
";
}
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("Creating directory [".$mdir."] failed.");
}
}
}
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 backup successful, backup file generated".getcwd()."/".$filename."/
The program automatically cleans up for 5 days Previous backup";
?>
The above introduces the PHP code for connecting VB to SQL database and backing up mySQL database, one table and one file, including the content of VB connecting to SQL database. I hope it will be helpful to friends who are interested in PHP tutorials.