Nie wiem czemu, ale nie rozumiem Twojego problemu. Jakiego hasła nie podaje? Tego w wiadomości którą wysyłasz?
Jeśli hasła w bazie masz hashowane w MD5 to nic nie da jak wyślesz je na meila, użytkownik i tak się nie zaloguje tym hasłem bo to tylko ciąg liter i cyfr, nic nie mający wspólnego z jego prawdziwym hasłem. Wg mnie powinieneś pomyślec nad tym, aby użytkownikowi wysyłać meila z linkiem w którego URLu będzie kod do resetu hasła. Jeśli w bazie przy jego emailu znajdzie się ten sam kod to w tedy wyświetlasz mu formularz do zmiany hasła i to wszystko.
To jest najprostrze i powiedzmy, że bezpieczne.
PS. Jesli CI chodzi o to hasło, które masz zakodowane w DB, że go nie wysyła, to spróbuj napsiać takie coś jako test, żeby sprawdzić co się konkretnie wysyła w tej wiadomości:
<?php
$email_to=$_POST['email_to'];
$query=("SELECT 'haslo' FROM uzytkownicy WHERE email ='$email_to'");
// jeśli $count =1
if($count==1){
$your_password=$rows['haslo'];
$to=$email_to;
$subject="Przypomnienie hasła";
$header="from: stronawww <admiin@www.pl>";
$messages.= "Twoje hasło do Bazy \r\n";
$messages.= "Twoje hasło do bazy to $your_password \r\n";
$sentmail = mail($to,$subject,$messages,$header); }else{
echo "Nie znaleziono takiego adresu e-mail w naszej bazie"; }
if($sentmail){
echo "Twoje hasło zostało wysłane na twój adres e-mail. Treść wiadomości brzmi: \n\n $messages"; }else{
echo "Nie mogliśmy wysłać hasła na Twój adres. Spróbuj jeszcze raz"; }
?>