У меня проблемы с моим запросом обновления в базе данных mysql. У меня есть форма входа в систему, которая, когда пользователь входит в систему, создает адрес электронной почты, пароль и идентификатор пользователя и сохраняет его в сеансе (не уверен, что это самый безопасный способ, пожалуйста, сообщите мне правильный/безопасный способ). Когда они войдут в систему, они могут пойти и изменить свой пароль (или должны быть). Проблема в том, что запрос на обновление пароля не работает для меня.mysql обновить текущий пароль пользователя
Вот мой код, который задает идентификатор, адрес электронной почты и пароль пользователя, когда они войти:
session_start();
$_SESSION['id'] = $id;
$_SESSION['email'] = $email;
$_SESSION['password'] = $password;
Вот код, который предназначен для обновления пароля:
session_start();
if (isset($_POST['email']) && isset($_POST['password']) && isset($_POST['newPassword']) && isset($_POST['oldPassword'])) {
$email = $_POST['email'];
$password = $_POST['password'];
$newPassword = $_POST['newPassword'];
$oldPassword = $_POST['oldPassword'];
mysql_select_db("users", $conn);
if(isset($_POST['update'])) {
$update = "UPDATE users SET Password='$newPassword' WHERE Password='$_POST[hidden]'";
mysql_query($update, $conn);
$_SESSION['password'] = $newPassword;
}
У меня есть поле «Старый пароль», в котором проверяется правильность их старого пароля и поле «Новый пароль», предназначенное для нового пароля пользователя, когда они нажимают «Обновить».
Проблема в том, что когда я нажимаю обновление, ничего не происходит. Я попытался использовать функцию mysql_error(), но это не сработало. Страница обновляется слишком быстро. Обратите внимание, что это еще не весь код, если вы хотите его загрузить: https://www.mediafire.com/?fkjwt58hk5kyt3w Привет, ребята, у меня проблемы с моим запросом обновления в базе данных mysql. У меня есть форма входа в систему, которая, когда пользователь входит в систему, создает адрес электронной почты, пароль и идентификатор пользователя и сохраняет его в сеансе (не уверен, что это самый безопасный способ, пожалуйста, сообщите мне правильный/безопасный способ). Когда они войдут в систему, они могут пойти и изменить свой пароль (или должны быть). Проблема в том, что запрос на обновление пароля не работает для меня.
Я знаю, что этот способ mysql делать вещи очень небезопасен, уязвим для SQL-инъекций и старого способа его выполнения, но это просто практика и для удовольствия. Впоследствии я узнаю, как предотвратить SQL-инъекцию и XSS.
У меня есть другие другие possts на этом сайте с похожими проблемами, но они мне совсем не помогли, я искал Google alot и искал ее на YouTube. Нигде не работает для меня !!!
Пожалуйста, помогите! Thanx заблаговременно
Если есть что-то еще, что вы хотели бы, чтобы я опубликовал или я ничего не сказал, просто дайте мне знать.
PS: Если вы можете, пожалуйста, загрузите все файлы и проверить их и запустить их сами :)
** Опасность **: Вы используя [** устаревший ** API баз данных] (http://stackoverflow.com/q/12859942/19068) и должен использовать [современную замену] (http://php.net/manual/en/mysqlinfo.api .choosing .php). Вы также уязвимы для [SQL-инъекций] (http://bobby-tables.com/) **, что современный API упростит [защиту] (http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php). – Quentin
Вы используете [неподходящий алгоритм хэширования] (http://php.net/manual/en/faq.passwords.php) (в данном случае это «вообще не алгоритм хеширования»!) И нужно [заботиться о себе лучше ] (https://www.owasp.org/index.php/Password_Storage_Cheat_Sheet) паролей пользователей. – Quentin
Что в $ _POST [скрыто]? –