Last active
August 29, 2015 14:10
-
-
Save dannyconnolly/512880fdb0916347add0 to your computer and use it in GitHub Desktop.
Import an sql dump file with PHP
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Name of the file | |
$filename = 'DUMPFILEHERE.sql'; | |
// MySQL host | |
$mysql_host = 'DB_HOST'; | |
// MySQL username | |
$mysql_username = 'DB_USER'; | |
// MySQL password | |
$mysql_password = 'DB_PASSWORD'; | |
// Database name | |
$mysql_database = 'DB_NAME'; | |
// Connect to MySQL server | |
mysql_connect($mysql_host, $mysql_username, $mysql_password) or die('Error connecting to MySQL server: ' . mysql_error()); | |
// Select database | |
mysql_select_db($mysql_database) or die('Error selecting MySQL database: ' . mysql_error()); | |
// Temporary variable, used to store current query | |
$templine = ''; | |
// Read in entire file | |
$lines = file($filename); | |
// Loop through each line | |
foreach ($lines as $line) { | |
// Skip it if it's a comment | |
if (substr($line, 0, 2) == '--' || $line == '') | |
continue; | |
// Add this line to the current segment | |
$templine .= $line; | |
// If it has a semicolon at the end, it's the end of the query | |
if (substr(trim($line), -1, 1) == ';') { | |
// Perform the query | |
mysql_query($templine) or print('Error performing query \'<strong>' . $templine . '\': ' . mysql_error() . '<br /><br />'); | |
// Reset temp variable to empty | |
$templine = ''; | |
} | |
} | |
echo "Tables imported successfully"; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment