@dr-might

Почему данные формы при отправке не записываются в базу данных?

Данные формы при отправке не записываются в базу данных,
в чем может быть причина?

Код:

// определяем начальные данные
$cipher = MCRYPT_RIJNDAEL_256;
$mode   = MCRYPT_MODE_CBC;
                $db_host = 'localhost';
                $db_name = 'user';
                $db_username = 'root';
                $db_password = 'root';
                $db_table_to_show = 'user';
				
// запоминаем юзера и сессию
$ip = getenv("HTTP_X_FORWARDED_FOR");
if (empty($ip) || $ip == 'unknown') {
    $ip = getenv("REMOTE_ADDR");
}

if (isset($_POST['save'])) {
    setcookie("login", $_POST["login"], time() + 9999999);
    setcookie("password", $password, time() + 9999999);
}

function encrypt($data, $key, $cipher, $mode) { // Шифрование данных
    return (string) base64_encode(mcrypt_encrypt($cipher, substr(md5($key), 0, mcrypt_get_key_size($cipher, $mode)), $data, $mode, substr(md5($key), 0, mcrypt_get_block_size($cipher, $mode))));
}

function decrypt($data, $key, $cipher, $mode) {// Дешифрование данных
    return (string) mcrypt_decrypt($cipher, substr(md5($key), 0, mcrypt_get_key_size($cipher, $mode)), base64_decode($data), $mode, substr(md5($key), 0, mcrypt_get_block_size($cipher, $mode)));
}

 //Пишем текст SQL запроса, который автоматически создаст нужную таблицу
 $sql=' CREATE TABLE user (
 id INT (11) UNSIGNED NOT NULL AUTO_INCREMENT, 
 login CHAR (45) NOT NULL, 
 email CHAR (45) NOT NULL, 
 password CHAR (45) NOT NULL, 
 phone CHAR (50) NOT NULL, 
date CHAR (50) NOT NULL, 
family CHAR (50) NOT NULL, 
education CHAR (50) NOT NULL, 
city CHAR (50) NOT NULL, 
 PRIMARY KEY (id)
 );';

// соединяемся с сервером базы данных
                $connect_to_db = mysql_connect($db_host, $db_username) or die("Could not connect: " . mysql_error());

// подключаемся к базе данных
                mysql_select_db($db_name, $connect_to_db) or die("Could not select DB: " . mysql_error());

	
// криптуем, убирает html теги, htmlspecialchars — преобразует спец. символы в html сущности

$login = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST['login'])))), $key, $cipher, $mode);
$password = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST['password'])))), $key, $cipher, $mode);
$email = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST['email'])))), $key, $cipher, $mode);
$phone = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST["phone"])))), $key, $cipher, $mode);
$date = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST['date'])))), $key, $cipher, $mode); 
$family = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST['family'])))), $key, $cipher, $mode); 
$education = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST['education'])))), $key, $cipher, $mode); 
$city = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST['city'])))), $key, $cipher, $mode);
$about = encrypt(trim(htmlspecialchars(stripslashes(strip_tags($_POST['about'])))), $key, $cipher, $mode);


$sql = 'INSERT INTO user(login, password, email, phone, date, family, education, city, about) VALUES("'.$login.'", "'.$password.'", "'.$email.'", "'.$phone.'", "'.$date.'", "'.$family.'", "'.$education.'", "'.$city.', "'.$about.'")';
  • Вопрос задан
  • 2545 просмотров
Решения вопроса 1
kindofbear
@kindofbear
Веб-разработчик
У вас нет собственно SQL запроса с INSERT
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
hedint
@hedint
Senior front-end developer
В какой строчке из этого кода вы осуществляете запись в базу данных? :)
(про то, что код, как минимум, ужасен, говорить смысла нет, думаю).
Ответ написан
zooks
@zooks
Frontend
Включи вывод ошибок и ищи ошибку.

Насчет последнего блока кода почитай:
php.net/manual/ru/control-structures.foreach.php
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы