Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] gotowy skrypt nie działa, logowanie na postawie danych z pliku
habbakuk
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 22.03.2005

Ostrzeżenie: (0%)
-----


Cześć. Mam gotowy skrypt umożliwiający logowanie się użytkowników. Dane (nazwa usera i hasło pobieraną są z pliku passwords.txt, mającego składnię: nazwa_usera:hasło). Oto skrypt:
  1. <?php
  2. @$pass = $_POST[&#092;"haslo\"];
  3. @$pass = $_POST[&#092;"user\"];
  4.  
  5. function checkPass($pass, $user){
  6. if(!$fd = @fopen(&#092;"passwords.txt\", \"r\")) return false;
  7. while(!feof ($fd)){
  8. $line = trim(fgets($fd));
  9. if(($pos = strpos($line, &#092;":\")) === false) continue;
  10.  
  11. $tempUser = substr($line, 0, $pos);
  12. if($tempUser != $user) continue;
  13.  
  14. $tempPass = substr($line, $pos + 1, strlen($line) - $pos);
  15.  
  16. if($tempPass != $pass) return false;
  17. else return true;
  18. }
  19.  
  20.  fclose($fd);
  21.  return false;
  22. }
  23.  
  24. if(!checkPass($pass, $user)){
  25.  echo(&#092;"<html><body><center>\");
  26.  echo(&#092;"<h2>Niepoprawne dane! Proszę spróbować ponownie.</h2>\");
  27.  echo(&#092;"</center></body></html>\");
  28.  }
  29. else{
  30.  include('index1.html');
  31. }
  32. ?>


I teraz w zależności od tego czy podam poprawne dane (tzn te z pliku) czy jakieś w ogólne z kosmosu to zawsze dostaję komunikat o nieprawidłowych danych. Co zrobić?
Pozdrawiam.

Ten post edytował habbakuk 18.06.2005, 12:10:56
Go to the top of the page
+Quote Post
gu35t
post
Post #2





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 15.05.2005

Ostrzeżenie: (0%)
-----


daj:

@$pass = trim($_POST['haslo']);
@$pass = trim($_POST['user']);

Ten post edytował gu35t 18.06.2005, 12:30:37
Go to the top of the page
+Quote Post
habbakuk
post
Post #3





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 22.03.2005

Ostrzeżenie: (0%)
-----


Nic z tego:
  1. <?php
  2. @$pass = trim($_POST[&#092;"haslo\"]);
  3. @$pass = trim($_POST[&#092;"user\"]);
  4.  
  5. function checkPass($pass, $user){
  6. if(!$fd = @fopen(&#092;"passwords.txt\", \"r\")) return false;
  7. while(!feof ($fd)){
  8. $line = trim(fgets($fd));
  9. if(($pos = strpos($line, &#092;":\")) === false) continue;
  10.  
  11. $tempUser = substr($line, 0, $pos);
  12. if($tempUser != $user) continue;
  13.  
  14. $tempPass = substr($line, $pos + 1, strlen($line) - $pos);
  15.  
  16. if($tempPass != $pass) return false;
  17. else return true;
  18. }
  19.  
  20.  fclose($fd);
  21.  return false;
  22. }
  23.  
  24. if(!checkPass($pass, $user)){
  25.  echo(&#092;"<html><body><center>\");
  26.  echo(&#092;"<h2>Niepoprawne dane! Proszę spróbować ponownie.</h2>\");
  27.  echo(&#092;"</center></body></html>\");
  28.  }
  29. if(checkPass($pass, $user)){
  30.  include('index1.html');
  31. }
  32. ?>

Objawy są te same. Być może z plikiem txt jest coś nie tak? Wygląda on:
Kod
michal:1234
rafal:5678
Go to the top of the page
+Quote Post
gu35t
post
Post #4





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 15.05.2005

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $pass = trim($_POST[&#092;"haslo\"]);
  3. $user = trim($_POST[&#092;"user\"]);
  4.  
  5. function checkPass($pass, $user){
  6. if(!$fd = @fopen(&#092;"passwords.txt\", \"r\")) return false;
  7. while(!feof ($fd)){
  8. $line = trim(fgets($fd));
  9. if(($pos = strpos($line, &#092;":\")) === false) continue;
  10.  
  11. $tempUser = substr($line, 0, $pos);
  12. if($tempUser != $user) continue;
  13.  
  14. $tempPass = substr($line, $pos + 1, strlen($line) - $pos);
  15.  
  16. if($tempPass != $pass) return false;
  17. else return true;
  18. }
  19.  
  20. fclose($fd);
  21. return false;
  22. }
  23.  
  24. if(!checkPass($pass, $user)){
  25. echo(&#092;"<html><body><center>\");
  26. echo(&#092;"<h2>Niepoprawne dane! Proszę spróbować ponownie.</h2>\");
  27. echo(&#092;"</center></body></html><form action=\"login.php\" method=\"post\">
  28. <input type=&#092;"text\" name=\"user\">
  29. <input type=&#092;"text\" name=\"haslo\">
  30. <input type=&#092;"submit\"></form>\");
  31. }
  32. else{
  33. include('index1.html');
  34. }
  35. ?>


mi dziala. pamietaj ze plik musi miec chmod do odczytu.
Go to the top of the page
+Quote Post
habbakuk
post
Post #5





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 22.03.2005

Ostrzeżenie: (0%)
-----


Działa, dzięki (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

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: 26.09.2025 - 00:00