The PHP backup database generates the SQL file and downloads the function code

  • 2020-05-12 02:20:38
  • OfStack

 
<!?php 
/******  Backup database structure  ******/ 
/* 
 Function name: table2sql() 
 Function function: converts the structure of a table into SQL 
 Function parameters: $table:  The name of the table to be extracted  
 return   Back to the   Value: returns the extracted result, SQL A collection of  
 Function author: heiyeluren 
*/ 
function table2sql($table) 
{ 
global $db; 
$tabledump = "DROP TABLE IF EXISTS $table;n"; 
$createtable = $db--->query("SHOW CREATE TABLE $table"); 
$create = $db->fetch_row($createtable); 
$tabledump .= $create[1].";nn"; 
return $tabledump; 
} 
/******  Back up the database structure and all data  ******/ 
/* 
 Function name: data2sql() 
 Function function: convert the table structure and data into SQL 
 Function parameters: $table:  The name of the table to be extracted  
 return   Back to the   Value: returns the extracted result, SQL A collection of  
 Function author: heiyeluren 
*/ 
function data2sql($table) 
{ 
global $db; 
$tabledump = "DROP TABLE IF EXISTS $table;n"; 
$createtable = $db->query("SHOW CREATE TABLE $table"); 
$create = $db->fetch_row($createtable); 
$tabledump .= $create[1].";nn"; 
$rows = $db->query("SELECT * FROM $table"); 
$numfields = $db->num_fields($rows); 
$numrows = $db->num_rows($rows); 
while ($row = $db->fetch_row($rows)) 
{ 
$comma = ""; 
$tabledump .= "INSERT INTO $table VALUES("; 
for($i = 0; $i < $numfields; $i++) 
{ 
$tabledump .= $comma."'".mysql_escape_string($row[$i])."'"; 
$comma = ","; 
} 
$tabledump .= ");n"; 
} 
$tabledump .= "n"; 
return $tabledump; 
} 
?> 
<!--?php 
$host="localhost"; // The host name  
$user="root"; //MYSQL The user name  
$password="root"; // password  
$dbname="dedecmsv4"; // Backed up database  
mysql_connect($host,$user,$password); 
mysql_select_db($dbname); 
$q1=mysql_query("show tables"); 
while($t=mysql_fetch_array($q1)){ 
$table=$t[0]; 
$q2=mysql_query("show create table `$table`"); 
$sql=mysql_fetch_array($q2); 
$mysql.=$sql['Create Table'].";rnrn";#DDL 
$q3=mysql_query("select * from `$table`"); 
while($data=mysql_fetch_assoc($q3)) 
{ 
$keys=array_keys($data); 
$keys=array_map('addslashes',$keys); 
$keys=join('`,`',$keys); 
$keys="`".$keys."`"; 
$vals=array_values($data); 
$vals=array_map('addslashes',$vals); 
$vals=join("','",$vals); 
$vals="'".$vals."'"; 
$mysql.="insert into `$table`($keys) values($vals);rn"; 
} 
$mysql.="rn"; 
} 
$filename=date('Ymd')."_".$dbname.".sql"; // The file name is the date of the day  
$fp = fopen($filename,'w'); 
fputs($fp,$mysql); 
fclose($fp); 
echo " Data backup succeeded , Generate backup files ".$filename; 
?> 

Related articles: