Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- function mysqldump($DBhost,$DBuser,$DBpass,$DBname,$tables = '*'){
- $connect = mysql_connect($DBhost,$DBuser,$DBpass);
- mysql_select_db($DBname,$connect);
- if($tables == '*'){
- $tables = array();
- $result = mysql_query('SHOW TABLES');
- while($row = mysql_fetch_row($result)){
- $tables[] = $row[0];
- }
- }
- else{
- $tables = is_array($tables) ? $tables : explode(',',$tables);
- }
- if(!is_array($tables))$tables[] = $tables;
- foreach($tables as $table){
- $return .= "\n\n-- DUMPING TABLE $table --";
- $result = mysql_query('SELECT * FROM '.$table);
- $num_fields = mysql_num_fields($result);
- $return .= "\n\nDROP TABLE IF EXISTS `".$table."`;";
- $row2 = mysql_fetch_row(mysql_query("SHOW CREATE TABLE ".$table));
- $return .= "\n\n".$row2[1].";";
- for($i=0;$< $num_fields; $i++){
- while($row = mysql_fetch_row($result)){
- $return.= "\n\nINSERT INTO `".$table."` VALUES (";
- for($j=0; $j<$num_fields; $j++){
- $row[$j] = addslashes($row[$j]);
- $row[$j] = preg_replace("@\n@","\\n",$row[$j]);
- if(isset($row[$j])){ $return.= '"'.$row[$j].'"';}
- else{$return.= '""';}
- if ($j<($num_fields-1)){$return.= ',';}
- }
- $return.= ");";
- }
- }
- $return .= "\n\n";
- }
- file_put_contents('tech-db-backup-'.time().'.sql',$return);
- }
- ?>
Add Comment
Please, Sign In to add comment