Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [problem] błąd w skrypcie
-Mistrig-
post 21.01.2006, 10:53:06
Post #1





Goście







Witam. No więc mam problem z takim skryptem:
Kod
$uzytkownicy=file("dane.php");
$ile=count($uzytkownicy);
for ($a=0; $a==$ile; $a+=3) {
    $b=$a++;
    if (sha1($_POST['login'])==$uzytkownicy[$a] and sha1($_POST['haslo'])==$uzytkownicy[$b]) {
        echo 'Logowanie zakończyło się sukcesem';
        break;
    }
}

Ten skrypt ma za zadanie uwierzytelnić użytkownika. W pliku dane.php dane są zapisane w trzech kolejnych wierszach (login, hasło, email) pierwsze dwa są zakodowane za pomocą funkcji sha1. Problem w tym, że skrypt mi nie działa. Mam nadzieje, że ktoś powie mi gdzie wystąpił błąd.
Go to the top of the page
+Quote Post
Pigula
post 21.01.2006, 11:16:58
Post #2





Grupa: Zarejestrowani
Postów: 446
Pomógł: 0
Dołączył: 5.03.2005
Skąd: Lublin

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


ja widze to tak:

  1. <?php
  2. $uzytkownicy=file("dane.php");
  3. $ile=count($uzytkownicy);
  4. for ($a=0; $a<$ile; $a+=2) {
  5.    $b=$a++;
  6.    if (sha1($_POST['login'])==$uzytkownicy[$a] && sha1($_POST['haslo'])==$uzytkownicy[$b]) {
  7.        echo 'Logowanie zakończyło się sukcesem';
  8.        break;
  9.    }
  10. }
  11. ?>


Ten post edytował Pigula 21.01.2006, 11:17:29
Go to the top of the page
+Quote Post
-Mistrig-
post 21.01.2006, 11:20:53
Post #3





Goście







Eeee a gdzie jest błąd?
Po za tym musi być +=3 ponieważ jest jeszcze email (który nie jest sprawdzany).
A dlaczego musi być < , a nie ==?
Go to the top of the page
+Quote Post
Pigula
post 21.01.2006, 11:24:50
Post #4





Grupa: Zarejestrowani
Postów: 446
Pomógł: 0
Dołączył: 5.03.2005
Skąd: Lublin

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


bo petla sie wykonuje dopoki warunek jest spelniony gdy == to nie bedzie spelnione i sie nie wykona a $a+=2 dlatego ze potem wydaje mi sie ze jak masz $b=$a++ to i a sie zwiekszy najlepiej zrob echo obu wartosci to bedziesz wiedziec jak ja mam racje to musisz jeszcze $uzytkownicy[$a] zmienic na $uzytkownicy[$a-1] a jak sie myle to przepraszam ale w warunku petli napewno ma byc <
Go to the top of the page
+Quote Post
-Mistrig-
post 21.01.2006, 11:36:50
Post #5





Goście







Wykazało że $a = 1 ,a $b = 0 sad.gif
Go to the top of the page
+Quote Post
-Mistrig-
post 21.01.2006, 11:39:36
Post #6





Goście







Ale czekaj napisałem $b=$a+1 i już jest w porządku.
Go to the top of the page
+Quote Post
-Mistrig-
post 21.01.2006, 11:54:28
Post #7





Goście







Ale i tak nie działa.....
Sorry, że pisze trzy tematy pod rząd, ale jako niezarejestrowany nie mogę zmieniać postów.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 09:27