Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Zmiana hasla przez uzytkownika
Forum PHP.pl > Forum > Przedszkole
king
witam!
robie mozliwosc zmiany hasla przez uzytkownika i mi narazie nie wychodzi:)
otoz chce sprawdzic czy uzytkownik wpisal stare haslo porprawnie, jesli tak to haslo sie aktualizuje....
i wlasnie jak wpisze stare haslo poprawnie albo zle to pokazuje ze "dobre haslo",


  1. <form method="post" action="ustawienia.php">
  2. <input type="password" name="starehaslo" /><br>
  3. <input type="password" name="nowehaslo" /><br>
  4. <input type="password" name="nowehaslo1" /><br>
  5. <input type="submit" name="submit" value="zmien" />
  6. </form>
  7.  
  8. <?php
  9. if (isset($_POST['submit'])){
  10. if (empty ($_POST ['starehaslo']))
  11. {
  12. $message = 'Nie podales starego hasla.';
  13. $starehaslo = FALSE;
  14. echo $message;
  15. }
  16. else{
  17. $login = usun($_POST['starehaslo']);
  18. }
  19.  
  20. if (empty ($_POST ['nowehaslo']))
  21. {
  22. $message = 'Nie podales nowego hasla.';
  23. $nowehaslo = FALSE;
  24. echo $message;
  25. }
  26. else{
  27. $password = usun($_POST['nowehaslo']);
  28. }
  29. if (empty ($_POST ['nowehaslo1']))
  30. {
  31. $message = 'Nie podales nowego hasla.';
  32. $nowehaslo1 = FALSE;
  33. echo $message;
  34. }
  35. else{
  36. $password = usun($_POST['nowehaslo1']);
  37. }
  38. if($_POST['nowehaslo'] == $_POST['nowehaslo1']){
  39. $haslo = usun($_POST['nowehaslo']);
  40. }else{
  41. $message .= '<font color="red">Podane hasła różnią się od siebie</font><br />';
  42. echo $message;
  43. }
  44.  
  45. $query = "select haslo from users where login='admin'";//sprawdzamy czy strre haslo jest poprawne
  46. $result = @mysql_query($query);
  47.  
  48. $starehaslo = $result['haslo'];
  49. if( $starehaslo == $stare){
  50.  
  51. echo 'dobre haslo';
  52.  
  53. if (isset($_POST['nowehaslo']) && isset($_POST['starehaslo'])){
  54. $stare = md5($_POST['starehaslo']); // md5
  55. $nowe = md5($_POST['nowehaslo']); //hasło kodujemy w MD5
  56.  
  57.  
  58.  
  59. $mysql = mysql_query("UPDATE users SET haslo = '$nowe' WHERE login ='admin' ");//dodaje nowe haslo do bazy
  60.  
  61. echo "zmieniles haslo";
  62.  
  63. }
  64. else{
  65. echo'nie ma palo';
  66. }
  67. }
  68. else{
  69. echo 'stare haslo jest zle';
  70.  
  71. }
  72. }
  73. ?><font color=\"red\">
</font color=\"red\">

/////juz sobie poradzilem
Crozin
Wiesz dlaczego? Ponieważ w tym warunku
  1. <?php
  2. if( $starehaslo == $stare){
  3. ?>
Zarówno pierwsza jak i druga zmienna ma inną wartość niż byś się spodziewał.
  1. <?php
  2. $starehaslo = $result['haslo'];
  3. ?>
zamień na
  1. <?php
  2. list($starehaslo) = mysql_fetch_array($result, MYSQL_NUM);
  3. ?>
oraz
  1. <?php
  2. $login = usun($_POST['starehaslo']);
  3. ?>
zamień na
  1. <?php
  2. $stare = $_POST['starehaslo'];
  3. ?>
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.