Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zmiana hasła skrypt php problem z upadate'em
nikestylex7
post
Post #1





Grupa: Zarejestrowani
Postów: 386
Pomógł: 7
Dołączył: 22.04.2010
Skąd: Ziemia

Ostrzeżenie: (20%)
X----


Witam piszę sobie własną stronkę wszystko działa poprawnie lecz stanąłem na tym gdy jako użytkownik chcę zmienić swoje hasło skrypt jakbym nie update'ował danych podczas zmiany. Podczas zmiany hasła wyskakuje że mam wpisać ponownie swoje obecne hasło. Może przeoczyłem jakiś błąd nie wiem. Proszę o pomoc.

  1. <form action="haslo.php" name="zmien_haslo" method="post">
  2. <tr>
  3. <td>Stare hasło</td>
  4. <td><input maxlength="16" type="password" name="shaslo" /></td>
  5. <td class="podpowiedz">Wpisz swoje obecne hasło</td>
  6. </tr>
  7. <tr>
  8. <td>Nowe hasło</td>
  9. <td><input maxlength="16" type="password" name="nhaslo" /></td>
  10. <td class="podpowiedz">Min. 6 znaków max. 16 znaków</td>
  11. </tr>
  12. <tr>
  13. <td>&nbsp;</td>
  14. <td><input maxlength="16" type="password" name="nhaslo2" /></td>
  15. <td class="podpowiedz">Wpisz ponownie nowe hasło</td>
  16. </tr>
  17. <tr>
  18. <td align="right" colspan="2"><input type="submit" name="zmien_haslo" value="Zmień" /></td>
  19. <td>&nbsp;</td>
  20. </tr>
  21. </table>
  22. </form>

  1. <?php
  2. $haslo = mysql_fetch_array(mysql_query("SELECT haslo FROM user WHERE user='$user' "));
  3. if(isSet($_POST['zmien_haslo'])){
  4. if(isSet($_POST['shaslo'])){
  5. $shaslo = md5($_POST['shaslo']);
  6. $nhaslo = md5($_POST['nhaslo']);
  7. }
  8. else{
  9. $haslo = '';
  10. $shaslo = '';
  11. $nhaslo = '';
  12. }
  13. if(empty($_POST['shaslo']) || empty($_POST['nhaslo']) || empty($_POST['nhaslo2'])){
  14. echo "Musisz wypełnić wszystkie pola! Zrobisz to <a href='java script:history.go(-1)'>powracając</a>.";
  15. }
  16. else if($shaslo !== $haslo['haslo']) {
  17. echo "Wpisz poprawnie swoje obecne hasło! Zrobisz to <a href='java script:history.go(-1)'>powracając</a>.";
  18. }
  19. else if($_POST['nhaslo'] !== $_POST['nhaslo2']){
  20. echo "Wpisałeś dwie inne propozycje nowego hasła. <a href='java script:history.go(-1)'>Wróć</a> i popraw ten błąd.";
  21. }
  22. else if(strlen($_POST['nhaslo']) < 6 || strlen($_POST['nhaslo2']) < 6){
  23. echo "Twoje nowe hasło musi zawierać minimum 6 znaków! <a href='java script:history.go(-1)'>Wróć</a> i popraw ten błąd.";
  24. }
  25. else if($_POST['shaslo'] === $_POST['nhaslo']){
  26. echo "Próbujesz zmienić hasło na takie same! <a href='java script:history.go(-1)'>Wróć</a> i zmień je.";
  27. }
  28. else {
  29. mysql_query("UPDATE user SET haslo='$nhaslo' WHERE user='$user' ");
  30. echo "Twoje hasło zostało pomyślnie zmienione. <a href='index.php'>Powrót</a> do strony logowania.";
  31. }
  32. }


Problem rozwiązany. Nikt z was w tym ja nie zauważył tego, że jak zaczyna się działanie skryptu to nie podałem przed nim $user = $_SESSION['zmiana']; (IMG:style_emoticons/default/smile.gif)

Ten post edytował nikestylex7 22.12.2011, 01:14:20
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 18:00