Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyciąganie hasła z pliku txt.
Forum PHP.pl > Forum > Przedszkole
Gość_Bartek
Witam, mam mały problem, mam taki oto skrypcik

  1. <?
  2. if(!isset($uzytkownik)&&!isset($haslo))
  3. {
  4. //Uzytkownik musi podac swoj identyfikator i haslo
  5. ?>
  6. <h1>Zaloguj się</h1>
  7. Ta strona jest zastrzeżona.
  8. <form method = post action = \"ustawhaslo.php\">
  9. <table border = 1>
  10. <tr>
  11. <th> Użytkownik </th>
  12. <td> <input type = text name = uzytkownik> </td>
  13. </tr>
  14. <tr>
  15. <th> Hasło </th>
  16. <td> <input type = password name = haslo> </td>
  17. </tr>
  18. <tr>
  19. <td colspan =2 align = center>
  20. <input type = submit value = \"Zaloguj się\">
  21. </td>
  22. </tr>
  23. </form>
  24. <?
  25. }
  26. else if($uzytkownik==&#092;"xxxx\"&&$haslo==\"xxxxx\")
  27. {


Chce, żeby hasłem było słowo zapisane w pliku haslo.txt, który znajduje się w tym samym katalogu, macie jakieś sugestie jak to zrobić ?
treewood
zawartosc pliku haslo.txt

login|haslo
login2|haslo2

zawartosc pliku php
  1. <?php
  2. $aFile = file( 'haslo.txt' );
  3. $iCount = count( $aFile );
  4. $bUser = null;
  5.  
  6. for( $i = 0; $i < $iCount; $i++ ){
  7.   $aExp = explode( '|', $aFile[$i] );
  8.   if( $aExp[0] == $uzytkownik && $aExp[1] == $haslo ){
  9.     $bUser = true;
  10.     break;
  11.   }
  12. } // end for
  13.  
  14. if( isset( $bUser ) && $bUser == true ){
  15. /// logowanie powiodlo sie i dalsza operacja
  16. }
  17. else{
  18. // zly login i haslo
  19. }
  20. ?>


Robione na szybko nie sprawdzane. w pliku haslo.txt mozesz zapisywac wiecej loginow i hasel. oddzielajac login od hasla znakiem "|".
nowy login i haslo dodajesz w nowej linii.
Gość_Bartek
Hmmm, niestety nie działa, skrypt od razu przechodzi do części dostępnej po poprwanym podaniu loginu i hasła, pomijając przy tym logowanie :/
treewood
lojej stary ... dzialac musi ... tylko trzeba to w odpowiednie miejsce wsadzic. myslalem, ze sie orientujesz na tyle. ale ok... masz gotowca:
  1. <?
  2. if( !empty( $uzytkownik ) && !empty( $haslo ) )
  3. {
  4.  
  5.  $aFile =  file( 'haslo.txt' );
  6.  $iCount = count( $aFile );
  7.  $bUser =  null;
  8.  
  9. for( $i = 0; $i < $iCount; $i++ ){
  10. $aExp = explode( '|', $aFile[$i] );
  11. if( $aExp[0] == $uzytkownik && $aExp[1] == $haslo ){
  12. $bUser = true;
  13. break;
  14. }
  15. } // end for
  16.  
  17. if( isset( $bUser ) && $bUser == true ){
  18. ?>
  19. <center>Zalogowałeś się poprawnie</center>
  20. <?php
  21. }
  22. else{
  23. ?>
  24. <center>Zły login lub hasło</center>
  25. <?php
  26. }
  27.  
  28. }
  29. else{
  30. ?>
  31. <h1>Zaloguj się</h1>
  32. Ta strona jest zastrzeżona.
  33. <form method='post' action=\"ustawhaslo.php\">
  34. <table border=1>
  35. <tr>
  36. <th> Użytkownik </th>
  37. <td> <input type = text name = uzytkownik> </td>
  38. </tr>
  39. <tr>
  40. <th> Hasło </th>
  41. <td> <input type = password name = haslo> </td>
  42. </tr>
  43. <tr>
  44. <td colspan =2 align = center>
  45. <input type = submit value = \"Zaloguj się\">
  46. </td>
  47. </tr>
  48. </form>
  49. <?php
  50. }
  51. ?>
Gość_Bartek
Ok, jakoś sobie poradziłem, dzięki za pomoc. Mam jeszcze jedno pytanie gdy zapsiuje jakieś zmienne do pliku .txt to w tymże pliku pojawia się również taki tekst "Resource id #2", wiecie może jak zrobić by tego nie było ?
e4you
moze tak jak zepisuje jakąś zmienną dodaj to $zmienna[0];

nie wiem czy o to chodzi
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.