подскажите в чем ошибка не могу добавить пользователя в базу данных (MySQL) ????

программирование php MySQL базы данных

по сути должно добавлять нового пользователя но его по чему то в базе данных нет ...

..
(немного урезал но не в этом суть)
<h2 class="h2-title">Регистрация</h2>
<form id="form_reg" method="POST" action="/reg/handler_reg.php">
<p id="reg_message"></p>

<div id="block-form-registration">
<ul id="form-registration">

<li>
<label>Логин</label>
<input type="text" name="reg_login" id="reg_login"/>
</li>
..
<p><input type="submit" name="reg_submit" id="form_submit" value="Регистрация"/></p>
..

файлы:
____________________
db_connect.php
____________________
<?php
$db_host = 'localhost';
$db_user = 'admin';
$db_pass = '12345';
$db_database = 'db_shop';

$link = mysql_connect($db_host,$db_user,$db_pass);

mysql_select_db($db_database, $link) or die ("Нет соединения с БД" .mysql_error());
mysql_query("SET names cp1251");
?>

____________________
functions.php
____________________
<?php

function clear_string($cl_str)
{

$cl_str = strip_tags($cl_str);
$cl_str = mysql_real_escape_string($cl_str);
$cl_str = trim($cl_str);
return $cl_str;
}

?>

____________________
handler_reg.php
____________________

<?php
if($_SERVER["REQUEST_METHOD"] == "POST")
{
session_start();
define('myeshop', true);
include("../block/db_connect.php");
include("../functions/functions.php");

$error = array();

$login = iconv("UTF-8", "cp1251",strtolower(clear_string($_POST['reg_login'])));
$pass = iconv("UTF-8", "cp1251",strtolower(clear_string($_POST['reg_pass'])));
$surname = iconv("UTF-8", "cp1251",clear_string($_POST['reg_surname']));

$name = iconv("UTF-8", "cp1251",clear_string($_POST['reg_name']));
$patronymic = iconv("UTF-8", "cp1251",clear_string($_POST['reg_patronymic']));
$email = iconv("UTF-8", "cp1251",clear_string($_POST['reg_email']));

$phone = iconv("UTF-8", "cp1251",clear_string($_POST['reg_phone']));
$address = iconv("UTF-8", "cp1251",clear_string($_POST['reg_address']));


if (strlen($login) < 5 or strlen($login) > 15)
{
$error[] = "Логин должен быть от 5 до 15 символов!";
}
else
{
$result = mysql_query("SELECT login FROM reg_user WHERE login = '$login'",$link);
If (mysql_num_rows($result) > 0)
{
$error[] = "Логин занят!";
}

}

if (strlen($pass) < 7 or strlen($pass) > 15) $error[] = "Укажите пароль от 7 до 15 символов!";
if (strlen($surname) < 3 or strlen($surname) > 20) $error[] = "Укажите Фамилию от 3 до 20 символов!";
if (strlen($name) < 3 or strlen($name) > 15) $error[] = "Укажите Имя от 3 до 15 символов!";
if (strlen($patronymic) < 3 or strlen($patronymic) > 25) $error[] = "Укажите Отчество от 3 до 25 символов!";
if (!preg_match("/^(?:[a-z0-9]+(?:[-_.]?[a-z0-9]+)?@[a-z0-9_.-]+(?:\.?[a-z0-9]+)?\.[a-z]{2,5})$/i",trim($email))) $error[] = "Укажите корректный email!";
if (!$phone) $error[] = "Укажите номер телефона!";
if (!$address) $error[] = "Необходимо указать адрес доставки!";

if($_SESSION['img_captcha'] != strtolower($_POST['reg_captcha'])) $error[] = "Неверный код с картинки!";
unset($_SESSION['img_captcha']);

if (count($error))
{

echo implode('<br />',$error);

}else
{
$pass = md5($pass);
$pass = strrev($pass);
$pass = "9nm2rv8q".$pass."2yo6z";

$ip = $_SERVER['REMOTE_ADDR'];

mysql_query(" INSERT INTO reg_user(login,pass,surname,name,patronymic,email,phone,address,datetime,ip)
VALUES(

'".$login."',
'".$pass."',
'".$surname."',
'".$name."',
'".$patronymic."',
'".$email."',
'".$phone."',
'".$address."',
NOW(),
'".$ip."'
)",$link);

echo 'true';
}


}
?>

Примечание:
slo_nik, вот запрос на запись, должно передавать в базу данных но не передает! ?



mysql_query(" INSERT INTO reg_user(login,pass,surname,name,patronymic,email,phone,address,datetime,ip)
VALUES(

'".$login."',
'".$pass."',
'".$surname."',
'".$name."',
'".$patronymic."',
'".$email."',
'".$phone."',
'".$address."',
NOW(),
'".$ip."'
)",$link);

echo 'true';
}


}
?>

Примечание:
$login = iconv("UTF-8", "cp1251",strtolower(clear_string($_POST['reg_login'])));

Примечание:
- это переменная в нее записываем данные с импута:

<input type="text" name="reg_login" id="reg_login"/>
Ответы:
а где error_reporting(), mysql_error()/mysql_errno() ?
Попробуй перекодировать в UTF-8 без BOM


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.