<?php
define('WP_INSTALLING', true);
if (!file_exists('../wp-config-sample.php'))
die('Извините, мне нужен файл wp-config-sample.php. Пожалуйста, загрузите снова этот файл.');
$configFile = file('../wp-config-sample.php');
if (!is_writable('../')) die("Извините, я не могу записать в директорию файл. Попробуйте изменить права на директорию, где лежит WordPress, или создайте файл your wp-config.php вручную.");
if (isset($_GET['step']))
$step = $_GET['step'];
else
$step = 0;
header( 'Content-Type: text/html; charset=utf-8' );
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>WordPress › Создание файла настроек</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style media="screen" type="text/css">
<!--
html {
background: #eee;
}
body {
background: #fff;
color: #000;
font-family: Georgia, "Times New Roman", Times, serif;
margin-left: 20%;
margin-right: 20%;
padding: .2em 2em;
}
h1 {
color: #006;
font-size: 18px;
font-weight: lighter;
}
h2 {
font-size: 16px;
}
p, li, dt {
line-height: 140%;
padding-bottom: 2px;
}
ul, ol {
padding: 5px 5px 5px 20px;
}
#logo {
margin-bottom: 2em;
}
.step a, .step input {
font-size: 2em;
}
td input {
font-size: 1.5em;
}
.step, th {
text-align: right;
}
#footer {
text-align: center;
border-top: 1px solid #ccc;
padding-top: 1em;
font-style: italic;
}
-->
</style>
</head>
<body>
<h1 id="logo"><img alt="WordPress" src="images/wordpress-logo.png" /></h1>
<?php
// Check if wp-config.php has been created
if (file_exists('../wp-config.php'))
die("<p>Файл 'wp-config.php' уже существует. Если Вам нужно сбросить настройки, сначала удалите его. Вы можете попробовать <a href='install.php'>установить WordPress</a> прямо сейчас.</p></body></html>");
switch($step) {
case 0:
?>
<p>Добро пожаловать. Для начала, нам нужно узнать настройки базы данных (БД).</p>
<ol>
<li>Название базы данных</li>
<li>Имя пользователя</li>
<li>Пароль</li>
<li>Хост</li>
<li>Префикс таблиц (если Вы хотите иметь несколько установок WordPress в одной базе данных) </li>
</ol>
<p><strong>Если по каким-то причинам автоматическое создание файла не сработает, сохраняйте спокойствие. Ведь все, что мы делаем - это всего лишь записываем информацию о базе данных в файл. Вы можете просто открыть файл <code>wp-config-sample.php</code> в вашем редакторе, написать там данные, и сохранить его как <code>wp-config.php</code>. </strong></p>
<p>Вероятно, эти данные предоставлены Вам вашим хостером. Если Вы не знаете их, пожалуйста, свяжитесь со своим хостером, прежде чем продолжать. Если Вы готовы, <a href="setup-config.php?step=1">поехали</a>! </p>
<?php
break;
case 1:
?>
</p>
<form method="post" action="setup-config.php?step=2">
<p>Вы должны указать параметры соединения с базой данных. Если Вы в чем-то неуверены, свяжитесь с Вашим хостером. </p>
<table>
<tr>
<th scope="row">Название базы данных</th>
<td><input name="dbname" type="text" size="25" value="wordpress" /></td>
<td>Название базы данных, в которую Вы хотите установить WP. </td>
</tr>
<tr>
<th scope="row">Имя пользователя</th>
<td><input name="uname" type="text" size="25" value="username" /></td>
<td>Ваше имя пользователя для MySQL</td>
</tr>
<tr>
<th scope="row">Пароль</th>
<td><input name="pwd" type="text" size="25" value="password" /></td>
<td>...и пароль для MySQL.</td>
</tr>
<tr>
<th scope="row">Хост</th>
<td><input name="dbhost" type="text" size="25" value="localhost" /></td>
<td>99% процентов - Вам не придется менять это поле.</td>
</tr>
<tr>
<th scope="row">Префикс таблиц</th>
<td><input name="prefix" type="text" id="prefix" value="wp_" size="25" /></td>
<td>Если Вы хотите иметь несколько установок WordPress в одной базе данных, измените.</td>
</tr>
</table>
<h2 class="step">
<input name="submit" type="submit" value="Далее" />
</h2>
</form>
<?php
break;
case 2:
$dbname = trim($_POST['dbname']);
$uname = trim($_POST['uname']);
$passwrd = trim($_POST['pwd']);
$dbhost = trim($_POST['dbhost']);
$prefix = trim($_POST['prefix']);
if (empty($prefix)) $prefix = 'wp_';
// Test the db connection.
define('DB_NAME', $dbname);
define('DB_USER', $uname);
define('DB_PASSWORD', $passwrd);
define('DB_HOST', $dbhost);
// We'll fail here if the values are no good.
require_once('../wp-includes/wp-db.php');
$handle = fopen('../wp-config.php', 'w');
foreach ($configFile as $line_num => $line) {
switch (substr($line,0,16)) {
case "define('DB_NAME'":
fwrite($handle, str_replace("putyourdbnamehere", $dbname, $line));
break;
case "define('DB_USER'":
fwrite($handle, str_replace("'usernamehere'", "'$uname'", $line));
break;
case "define('DB_PASSW":
fwrite($handle, str_replace("'yourpasswordhere'", "'$passwrd'", $line));
break;
case "define('DB_HOST'":
fwrite($handle, str_replace("localhost", $dbhost, $line));
break;
case '$table_prefix =':
fwrite($handle, str_replace('wp_', $prefix, $line));
break;
default:
fwrite($handle, $line);
}
}
fclose($handle);
chmod('../wp-config.php', 0666);
?>
<p>Все в порядке! Вы прошли эту часть установки. WordPress может связаться с базой данных. Готовы? Время <a href="install.php">установить WordPress</a>.</p>
<?php
break;
}
?>
<p id="footer"><a href="http://wordpress.org/">WordPress</a>, система персональных публикаций.</p>
</body>
</html>