Во-первых: «Не работает» в не полезно.Вы должны определить, что не работает.Вы должны определить для себя, что вы ожидаете увидеть и что вы на самом деле получаете в каждой точке вашей программы.Затем вы можете определить, где эти две вещи расходятся.
Проблема 1: Вы перебираете всех пользователей выбранного запроса, но сохраняете только последний в своей переменной.Также, если ваш выбор не возвращает никаких строк, вы будете выполнять обновление с неинициализированными переменными.
Проблема 2: В вашей таблице есть столбец с именем «пароль».Это зарезервированное ключевое слово с mysql.Вы можете использовать это имя, но вместо этого следует ссылаться на него следующим образом:
... SET `password` = ...
Оно может работать без кавычек, но зачем рисковать ...
Кроме того, ваш запрос на обновление выглядит правильно,Если он ничего не обновляет, вы должны протестировать его, используя командную строку mysql или инструмент управления, например phpmyadmin.