Вопрос Логин, имя, пароль пользователя после регистрации, не приходят на phpmyadmin

Регистрация
29 Авг 2013
Сообщения
91
Репутация
0
Спасибо
0
Монет
0
Логин, имя, пароль пользователя не приходят на базу данных после регистрации, не приходят на phpmyadmin

<?php

$login = filter_var(trim($_POST['login']),

FILTER_SANITIZE_STRING);

$pass = filter_var(trim($_POST['pass']),

FILTER_SANITIZE_STRING);

$name = filter_var(trim($_POST['name']),

FILTER_SANITIZE_STRING);



$mysql = new mysqli('localhost','root','----','----');

$mysql->query("INSERT INTO 'users' ('login', 'pass', 'name')

VALUES('$login''$pass','$name')");





$mysql->close();

?>
 
ты рутом с базой работаешь? и да, пароль НАДО шифровать.
 
Если логин, имя и пароль пользователя не приходят на базу данных после регистрации, возможно есть некоторые проблемы в коде, которые могут привести к ошибке.

Вот несколько возможных проблем и рекомендации по исправлению:

1. Проверьте правильность подключения к базе данных. Убедитесь, что хост, имя пользователя, пароль и название базы данных указаны правильно. Также убедитесь, что у вас есть соответствующие права доступа к базе данных.

2. Проверьте, что форма отправляет данные методом POST и что имена полей в HTML-форме соответствуют тем, которые вы используете в PHP-скрипте ($_POST['login'], $_POST['pass'], $_POST['name']).

3. Проверьте, что все переменные успешно фильтруются и не содержат нежелательных символов. Убедитесь, что функция filter_var и фильтры FILTER_SANITIZE_STRING работают правильно. Также рекомендуется применять дополнительные проверки на валидность данных перед вставкой в базу данных.

4. Проверьте правильность синтаксиса запроса INSERT INTO. У вас должны быть правильно указаны имена таблицы и полей, а также значения, которые вы вставляете. Убедитесь, что вы используете одинарные кавычки для обозначения имен таблицы и полей, а не двойные кавычки, и что значения разделены запятыми.

5. Проверьте, что у вас есть соединение с базой данных, и нет ошибок в подключении или выполнении запроса. Вы можете добавить проверку на ошибки, используя методы объекта $mysql, например, $mysql->connect_error для проверки ошибки подключения и $mysql->error для проверки ошибок выполнения запроса.

6. Убедитесь, что ваш сервер настроен для отправки данных в базу данных. Проверьте, что PHP имеет доступ к вашей базе данных и что phpMyAdmin работает правильно.

Обратите внимание, что в вашем коде есть пробелы и ошибки в синтаксисе. Вот исправленная версия вашего кода:

```php
<?php
$login = filter_var(trim($_POST['login']), FILTER_SANITIZE_STRING);
$pass = filter_var(trim($_POST['pass']), FILTER_SANITIZE_STRING);
$name = filter_var(trim($_POST['name']), FILTER_SANITIZE_STRING);

$mysql = new mysqli('', 'root', 'пароль', 'имя_базы_данных'); ***
if ($mysql->connect_error) {
die('Ошибка подключения к базе данных: ' . $mysql->connect_error);
}

$query = "INSERT INTO users (login, pass, name) VALUES ('$login', '$pass', '$name')";
if ($mysql->query($query) === TRUE) {
echo "Данные успешно добавлены в базу данных.";
} else {
echo "Ошибка: " . $query . "<br>" . $mysql->error;
}

$mysql->close();
?>
```

Убедитесь, что вы заменили `'пароль'` и `'имя_базы_данных'` на соответствующие значения вашей базы данных.
 
Содержит ошибки, ща исправлю
 
Имена полей нельзя брать в одинарные кавычки ('), нужно или вообще не брать, или брать в обратные кавычки (`), на кнопке Ё. И запятые не пропускай.
 
Назад
Сверху