>  기사  >  백엔드 개발  >  vb는 SQL 데이터베이스에 연결하고 mysql 데이터베이스의 PHP 코드, 하나의 테이블 및 하나의 파일을 백업합니다.

vb는 SQL 데이터베이스에 연결하고 mysql 데이터베이스의 PHP 코드, 하나의 테이블 및 하나의 파일을 백업합니다.

WBOY
WBOY원래의
2016-07-29 08:42:541155검색

코드 복사 코드는 다음과 같습니다.


$cfg_dbhost ='localhost';//mysql 호스트
$cfg_dbname ='sq_test';//데이터베이스 이름
$cfg_dbuser ='root';//데이터베이스 사용자 이름
$cfg_dbpwd ='jb51.net';//데이터베이스 사용자 비밀번호
$ cfg_db_언어 =' utf8';//데이터베이스 인코딩
class dbmysql{
public static $dbhost = 'localhost';
public static $dbname;
public static $dbuser
public static $dbpass;
public static $charset = 'utf8';
public static $DB = null;
public $querycount = 0
공용 함수 __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_언어']
self::connect()}
공용 함수 연결(){
self::$DB=mysql_connect(self::$dbhost,self::$dbuser,self::$dbpass)
if(!self::$DB);
self::sqlError('서버에 연결할 수 없습니다!'.self::mysqlerror);exit("서버에 연결할 수 없습니다!")
}
if(!mysql_select_db( self::$dbname)){
self::sqlError('데이터베이스('.self::$dbname.')에 연결할 수 없습니다!'.self::mysqlerror);exit("데이터베이스에 연결할 수 없습니다. !");
}
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) ;
$tables 반환
}
공용 함수 getFields($table){
$res=mysql_query('DESCRIBE'.$table,self::$DB); =array();
while($row= mysql_fetch_row($res))$tables[]=$row[0];
mysql_free_result($res)
return $tables;
공용 함수 fetch_array($sql){
$res=mysql_query($sql,self::$DB)
$r=mysql_fetch_array($res);
mysql_free_result($res);
return $r;
}
공용 함수 fetch_assoc($sql){
$q3=mysql_query($sql,self::$DB)
while($data=mysql_fetch_assoc($q3)){
$ra[]=$data;
}
mysql_free_result($q3)
return $ra; 개인 함수 sqlError($message='',$info = '',$sql=''){//오류 메시지를 파일
echo "{".$message."
DATE에 저장: ".date('Y-n-j H:i:s') ."
오류: ".$info."
SQL: ".$sql."
}
";
}
공용 함수 close(){
self::$DB =null;
}
공용 함수 __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==".")계속
if(!is_dir($mdir)&&!file_exists($ mdir)){
if(!@mkdir( $mdir,0755)){
exit("디렉토리 [".$mdir."] 생성에 실패했습니다.")
}
}
}
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 "디렉토리가 성공적으로 삭제되었습니다: $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/"; handler = 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("`$t`에서 * 선택");
foreach($a1을 $data로){
$vals=array_values($data );
$vals=array_map('addslashes', $vals)
$vals=join("','",$vals);
$vals="'".$vals." '";
$mysql.="` $t` 값에 삽입($vals);rn";
}
$mysql.="rn";
filein($filename,$ t,$mysql);
}
echo "데이터 백업 성공, 백업 파일 생성".getcwd()."/".$filename."/
프로그램이 자동으로 5부터 백업을 정리합니다. 일 전";
?>


위 내용은 VB를 SQL 데이터베이스에 연결하고 MySQL 데이터베이스를 백업하는 PHP 코드, SQL 데이터베이스에 연결하는 VB의 내용을 포함하여 하나의 테이블을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되길 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.