Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapomniane hasło.
Forum PHP.pl > Forum > Przedszkole
Szejk
Witam.
Mam na stronie logowanie/rejestracje no i chciałbym przerobić skrypt tak że jeśli ktoś zapomnie hasło to po kliknięciu w link "zapomniałem hasło. pokazał sie formularz gdzie będzie musiał podać login i email a skrypt porównał login z tym z pliku gdzie są one zapisane i wysłał mu te hasło.Najlepiej by subskrycja była na plikach.
fiszol
Witam,

gotowca Ci nie podam jednak mam nadzieję że pomogę.

pierwszym krokiem będzie formularz w którym ów pechowiec poda swój login i email który podał przy rejstrajcji/subskrypcji.

drugi krok obejmie wyciągnięcie zmiennych z bazy dla loginu i maila.

trzeci krok to wysłanie maila na adres z bazy jeśli adres i login z bazy zgadzają się z tymi podanymi w formularzu, wdłg poniższego:

  1. <?
  2. if ($formlogin === $bazalogin and $formmail === $bazamail ) 
  3.           
  4.              { /* skrypt wysyłający maila */
  5.              }
  6. else echo &#092;"Przykro mi, adresy podane przy rejstracji i w formularzu są różne\" ;
  7. ?>


pozdrawiam,
fiszol
Szejk
a ja mam to oparte na plikach i sesjach czy to coś zmienia
fiszol
W takim razie pobierz i porównaj login i maila z plików, a nie z bazy

pozdraiwam,
fiszol
Szejk
Już sobie poradziłem
Guest
napisałem tylko nie wiem czy będzie działać
Kod
<?

if (!file_exists("user/$log.dat"))
{
echo("Złe dane!");
}
elseif (file_exists("user/$log.dat"))
{
include("user/$log.dat");
        if($log  ==  $log  &&  $mail  ==  $mail)    
    {
     $mail="$mail"; // tutaj wpisz swój adres email
         $inf=("Ponieważ zapomniałe&para; swojego hasła jestem taki uprzejmy że wysyłam Ci je w prezencie. Brzmi ono: $pass Przy okazji polecam zażywać odpowiednie &para;rodki wzmacniaj&plusmn;ce pamięć.");  
    mail("$mail","Przypomnienie hasla","$inf");
   echo("<center>Drogi $log. Haslo zostało przeslane na Twoj&plusmn; skrzynke email - $mail</CENTER>");

   }
   else
   {
   echo "Coś nie tak";
  }
}  

jak coś to moge podać jeszcze formularz
Szejk
Sory za ten post na górze to ja go napisalem przez pomyłke ale czy ten kod co podałem będzie działać
fiszol
Tak na oko wszystko jest ok, niechcem Cię wprowadzać w błąd przez swoją niewiedzę, jednak wydaje mi się że zamiast include powinienieśużyć require, a w ogóle to najlepsze w tym kodzie jest

  1. <? else { echo &#092;"Coś nie tak\" ; } ?>
smile.gifsmile.gif

Może lepiej napisać
  1. <? else { echo &#092;"Opercja nie powidła się bo zupa była nie słona\" ; } ?>

?tongue.gif

pozdrawiam,
fiszol
Szejk
a jednak na servie nie chce śmigać
podam kod formularza
Kod
<table align="center" width="200">
<tr><td>
<form  ACTION="haslo.php"    method=post>  
<b>Login:</b> <input    TYPE="text"    name=log  style="width: 150px;"><br></td></tr>  
<tr><td>
<b>Email:</b> <input TYPE="text" name=mail style="width: 150px;"><br></td></tr>
<tr><td><input    TYPE="submit"    value=Dalej    class=submit>  
</FORM></td></tr></table>  

za każym razem wyskakuje
Cytat
Błędne dane !

co to może być może zła ścieżka docelowa do pliku z danymi ale dla mnie jest OK.
mls
A może register_globals jest wyłączone?...
Szejk
mam użyć czegoś takiego $_POST['log'] ale jak tak samo czy będę musiał coś jeszcze przerobić
MoD
najlepiej zrób sobie tak:

  1. <?php
  2. $log = $_POST['log'];
  3. $mail = $_POST['mail'];
  4. ?>


Wstaw to na początku skryptu i nie będziesz musiał nic zmieniać.
Szejk
OK dzięki Ci.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.