Насколько я понимаю, все сводится к тому, чтобы с помощью php создать файл с учетными данными для доступа к серверу баз данных, после этого выполнить запрос на создание базы данных. Далее, вручную удалить папку install, в которой находятся скрипты.
Первый и последний пункт понятны. Не ясно каким образом из php выполнить довольно большой по объему SQL - запрос?
Так?
mysql_query ("сюда просто копирую экспортированную из phpmyadmin базу данных (SQL - формат)", $db);
Спустя 21 минута, 4 секунды (19.07.2010 - 22:53) Userguest написал(а):
Проверил свое предположение - ничего не получилось.
Как выполнить sql - запрос из внешнего файла?
Как выполнить sql - запрос из внешнего файла?
Спустя 52 минуты, 15 секунд (19.07.2010 - 23:46) Rand написал(а):
Самое простое:
$sql=file_get_contents("dump.sql");
mysql_query ($sql, $db) or die(mysql_error());
Спустя 1 минута, 45 секунд (19.07.2010 - 23:47) waldicom написал(а):
Цитата (Rand @ 19.07.2010 - 22:46) |
$sql=file_get_contents("dump.sql"); |
Сами пробовали что предлагаете?
Спустя 4 минуты, 23 секунды (19.07.2010 - 23:52) Rand написал(а):
Ну ещё надо распарсить на запросы, если это действительно дамп. Но автор же спросил "Как выполнить sql - запрос из внешнего файла" - для одного запроса этот пример вполне рабочий.
Для нескольких запросов, само собой надо сделать что-то вроде:
Для нескольких запросов, само собой надо сделать что-то вроде:
$sql_file=file_get_contents("dump.sql");или регулярками парсить
$sql=explode(";".PHP_EOL, $sql_file);
foreach ($sql as $query) {
$query = trim($query);
if (strlen($query)>0) {
mysql_query ($query, $db) or die(mysql_error());
}
}