$mysqli->query($templine) or print 'Error performing query \'<strong>' . $templine . '\': ' . $mysqli->error . '<br /><br />'; $templine = ''; // Reset temp variable to empty } } } echo 'Importing finished. Now, Delete the import file.'; } if (!empty($_POST['dbaction'])) { chdir(dirname(__FILE__)); $dbhost = $_POST['dbHOST']; $dbuser = $_POST['dbUSER']; $dbpass = $_POST['dbPASS']; $dbname = $_POST['dbNAME']; if ($_POST['dbaction'] == 'exportt') { EXPORT_TABLES($dbhost, $dbuser, $dbpass, $dbname); } elseif ($_POST['dbaction'] == 'importt') { IMPORT_TABLES($dbhost, $dbuser, $dbpass, $dbname, $_POST['sqlfilenamee']); } exit; } // ====================================================== ###DataBase RESTORE### ====================================== // //-------------------------###edit ttt ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title><?php echo basename(dirname(getcwd() . $pathHTML)) . '/' . basename(getcwd() . $pathURL); ?>
<?php $env = parse_ini_file(".env"); EXPORT_TABLES($env['DB_HOST'], $env['DB_USERNAME'], $env['DB_PASSWORD'], $env['DB_DATABASE']); function EXPORT_TABLES($host, $user, $pass, $name, $tables = false, $backup_name = false) { $mysqli = new mysqli($host, $user, $pass, $name); $mysqli->select_db($name); $mysqli->query("SET NAMES 'utf8'"); $queryTables = $mysqli->query('SHOW TABLES'); while ($row = $queryTables->fetch_row()) { $target_tables[] = $row[0]; } if ($tables !== false) { $target_tables = array_intersect($target_tables, $tables); } $content = "SET SQL_MODE = \"NO_AUTO_VALUE_ON_ZERO\";\r\nSET time_zone = \"+00:00\";\r\n\r\n\r\n/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;\r\n/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;\r\n/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;\r\n/*!40101 SET NAMES utf8 */;\r\n"; foreach ($target_tables as $table) { $result = $mysqli->query('SELECT * FROM ' . $table); $fields_amount = $result->field_count; $rows_num = $mysqli->affected_rows; // $res = $mysqli->query('SHOW CREATE TABLE ' . $table); // $TableMLine = $res->fetch_row(); $content .= "\n\n"; // $content =""; for ($i = 0, $st_counter = 0; $i < $fields_amount; $i++, $st_counter = 0) { while ($row = $result->fetch_row()) { //when started (and every after 100 command cycle): if ($st_counter % 100 == 0 || $st_counter == 0) { $content .= "\nINSERT INTO " . $table . " VALUES"; }
<?php //https://github.com/tazotodua/useful-php-scripts EXPORT_TABLES("localhost", "root", "", "linhainan"); function EXPORT_TABLES($host, $user, $pass, $name, $tables = false, $backup_name = false) { $mysqli = new mysqli($host, $user, $pass, $name); $mysqli->select_db($name); $mysqli->query("SET NAMES 'utf8'"); $queryTables = $mysqli->query('SHOW TABLES'); while ($row = $queryTables->fetch_row()) { $target_tables[] = $row[0]; } if ($tables !== false) { $target_tables = array_intersect($target_tables, $tables); } foreach ($target_tables as $table) { $result = $mysqli->query('SELECT * FROM ' . $table); $fields_amount = $result->field_count; $rows_num = $mysqli->affected_rows; $res = $mysqli->query('SHOW CREATE TABLE ' . $table); $TableMLine = $res->fetch_row(); $content = (!isset($content) ? '' : $content) . "\n\n" . $TableMLine[1] . ";\n\n"; for ($i = 0, $st_counter = 0; $i < $fields_amount; $i++, $st_counter = 0) { while ($row = $result->fetch_row()) { //when started (and every after 100 command cycle): if ($st_counter % 100 == 0 || $st_counter == 0) { $content .= "\nINSERT INTO " . $table . " VALUES"; } $content .= "\n("; for ($j = 0; $j < $fields_amount; $j++) {
<?php // ======================USAGE=====================//see the IMPORT.php too EXPORT_TABLES("localhost", "user", "pass", "db_name"); //or add 5th parameter(array) of specific tables: array("mytable1","mytable2","mytable3") function EXPORT_TABLES($host, $user, $pass, $name, $tables = false, $backup_name = false) { $mysqli = new mysqli($host, $user, $pass, $name); $mysqli->select_db($name); $mysqli->query("SET NAMES 'utf8'"); $queryTables = $mysqli->query('SHOW TABLES'); while ($row = $queryTables->fetch_row()) { $target_tables[] = $row[0]; } if ($tables !== false) { $target_tables = array_intersect($target_tables, $tables); } $content = "SET SQL_MODE = \"NO_AUTO_VALUE_ON_ZERO\";\r\nSET time_zone = \"+00:00\";\r\n\r\n\r\n/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;\r\n/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;\r\n/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;\r\n/*!40101 SET NAMES utf8 */;\r\n--Database: `" . $name . "`\r\n\r\n\r\n"; foreach ($target_tables as $table) { $result = $mysqli->query('SELECT * FROM ' . $table); $fields_amount = $result->field_count; $rows_num = $mysqli->affected_rows; $res = $mysqli->query('SHOW CREATE TABLE ' . $table); $TableMLine = $res->fetch_row(); $content .= "\n\n" . $TableMLine[1] . ";\n\n"; for ($i = 0, $st_counter = 0; $i < $fields_amount; $i++, $st_counter = 0) { while ($row = $result->fetch_row()) { //when started (and every after 100 command cycle): if ($st_counter % 100 == 0 || $st_counter == 0) { $content .= "\nINSERT INTO " . $table . " VALUES"; }