При отправке в базу данных mysql выдает ошибку Column count doesn't match value count at row 1.
Отправка идет через
reg.php, который содержит в себе следующие
<html>
<head>
<link media="screen" href="../style/bootstrap.css" type="text/css" rel="stylesheet" />
<link media="screen" href="../style/bootstrap.min.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="../style/bootstrap.js"></script>
<script type="text/javascript" src="../style/bootstrap.min.js"></script>
<title>Регистрация</title>
</head>
<body style="width:900px;margin: 0 auto;">
<?php
define ("SQL_HOST","localhost");
define ("SQL_DB","");
define ("SQL_LOGIN","");
define ("SQL_PASSWORD","");
$db = mysql_connect(SQL_HOST,SQL_LOGIN,SQL_PASSWORD);
if(!$db){ exit("Ошибка соединения с базой данных ".mysql_error()); }
if(!mysql_select_db(SQL_DB,$db)){ exit("Нет такой базы данных ".mysql_error()); }
mysql_query("SET NAMES 'cp1251_general_ci'");
mysql_query("SET CHARACTER SET 'cp1251_general_ci'");
mysql_query("SET SESSION collation_connection = 'cp1251_general_ci'");
mysql_error($db);
?>
<?php
print_r($_POST);
if (isset($_POST['reg'])) {
$login = (isset($_POST['name'])) ? mysql_real_escape_string($_POST['name']) : '';
$email = (isset($_POST['email'])) ? mysql_real_escape_string($_POST['email']) : '';
$password = (isset($_POST['password'])) ? mysql_real_escape_string($_POST['password']) : '';
$r_password = (isset($_POST['r_password'])) ? mysql_real_escape_string($_POST['r_password']) : '';
$error = false;
$error_text = "";
$validation_login = mysql_query("SELECT id FROM users WHERE name='$login' LIMIT 1"); //Проверяю наличие юзера
$myrow_login = mysql_fetch_array($validation_login);
$validation_email = mysql_query("SELECT id FROM users WHERE email='$email' LIMIT 1"); //Проверяю наличие email
$myrow_email = mysql_fetch_array($validation_email);
if (!empty($myrow_login['id'])) {
$error = true;
$error_text .= "<p>Логин $login занят!</p>";
}
if (!empty($myrow_email['id'])) {
$error = true;
$error_text .= "<p>Данный email уже на кого-то зарегестрирован!</p>";
}
if (empty($login)){
$error = true;
$error_text .= "<p>Вы не ввели логин</p>";
}
if(!preg_match("/[0-9a-z_]+@[0-9a-z_\-^\.]+\.[a-z]{2,3}/i", $email)){
$error = true;
$error_text .= "<p>Неверный формат email адреса</p>";
}
if(!preg_match("/[0-9a-z]{6,9}/i", $password)){
$error = true;
$error_text .= "<p>Неверный формат пароля!</p>";
}
if($password != $r_password) {
$error = true;
$error_text .= "Пароли не совпадают!";
}
if(!$error){
$password = md5($password);
$query = mysql_query("INSERT INTO users VALUES ('','$email', '$login', '$password')") or die (mysql_error());
$sql = mysql_query($query);
echo '<div class="bs-callout bs-callout-danger" style="text-align: center;padding-top: 250px;">
<h4>Вы зарегестрированы!</h4>
<p>Теперь вы можете авторизоватся.</p>
</div>';
}
else {
echo $error_text;
}
}
else {
echo '
<form name = "myform" method="post" style="text-align:center;padding-top:250px;">
<label style="margin-bottom: 5px;display: block;">Логин:</label>
<input type = "text" name = "name" style="margin-bottom: 15px;" />
<label style="margin-bottom: 5px;display: block;">Пароль:</label>
<input type = "text" name = "password" style="margin-bottom: 15px;" />
<label style="margin-bottom: 5px;display: block;">Еще раз:</label>
<input type = "text" name = "r_password" style="margin-bottom: 15px;" />
<label style="margin-bottom: 5px;display: block;">Ваш E-mail:</label>
<input type = "text" name = "email" /> <br/>
<input style="margin-top:15px;" class="btn btn-success" type = "submit" value = "Зарегистрироватся" name="reg" />
</form>
';
}
?>
</body>
</html>
В чем может быть проблема?