Ostrzeżenie: mysql_*
Rozszerzenie jest przestarzałe od PHP 5.5.0 i zostało usunięte od PHP 7.0.0. Zamiast tego albo mysqli
lub PDO_MySQL
należy użyć rozszerzenia. Zobacz także Omówienie interfejsu API MySQL
aby uzyskać dalszą pomoc przy wyborze interfejsu API MySQL.
Jeśli to możliwe, importowanie pliku do MySQL powinno być delegowane do klienta MySQL.
Mam inny sposób, aby to zrobić, wypróbuj tego
<?php
// Name of the file
$filename = 'churc.sql';
// MySQL host
$mysql_host = 'localhost';
// MySQL username
$mysql_username = 'root';
// MySQL password
$mysql_password = '';
// Database name
$mysql_database = 'dump';
// 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";
?>
To działa dla mnie