No to przede wszystkim wysyłanie maili:
PL: https://kursphp.com/rozdzial-5/wiadomosci-e-mail/
ENG: https://www.php.net/manual/en/function.mail.php
Nie zakładaj z góry, że jeśli ktoś kliknie w "Zapomniałem hasło" to jest to właściciel konta, więc co do zmiany hasła najlepiej wstrzymaj się dopóki nie zostanie to potwierdzone w mailu. W mailu umieściłbym link, który powoduje przeniesienie do strony, na której będzie się dało ustawić swoje nowe hasło. Ewentualnie jeśli bardzo chcesz to nowe hasło na mailu to możesz tam właśnie wysłać losowe generowane hasło, ale niech "wejdzie w życie" dopiero, gdy użytkownik potwierdzi na mailu, że to on chciał zmienić hasło a nie ktoś inny.
Dla początkującego może się to wydawać skomplikowany temat, ale jeśli znasz podstawy to usiądź wygodnie w fotelu i zaplanuj sobie w głowie jak taka funkcja ma działać, potem zacznij pisanie.