Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Proszę o pomoc- co jest nie tak?
Forum PHP.pl > Forum > Gotowe rozwiązania
kret
Pytanie dotyczy tego fragmentu skryptu:


[php:1:d41d928d9b]<?php
$auth = false; // założenie o braku autoryzacji

// Odczyt pliku z nazwami użytkowników i ich hasłami
$filename = 'userzy.txt';
$fp = fopen( $filename, 'r' );
$plik = fread($fp, filesize($filename));
fclose($fp);

// Wstawienie każdej linii do tablicy
$linie = explode ( "n", $plik );

// sprawdzenie każdej pary UŻYTKOWNIK:HASŁO
foreach ($linie as $wiersz) {
list( $username, $password ) = explode( ':', $wiersz );
if(($username == $login) && ($password == $haslo)) {
$auth = true;
break;
}
}

?>[/php:1:d41d928d9b]

problem dotyczy instrukcji foreach, powinna ona sprawdzać w pętli każdy element tablicy , jeżeli szukana para użytkownik:hasło jest ostatnim elementem tablicy to jest ok, ale jeśli np. pierwszym to nie działa. Czy może ktoś wie dlaczego :?:
Jabol
spróbuj dac trimy na te wartosci i może jeszcze reset() na tablice?
KaMeLeOn
Cytat
[...] ale jeśli np. pierwszym to nie działa. Czy może ktoś wie dlaczego :?:

Nie widzę błędu w tym skrypcie... Skontroluj zmienna $auth...
Co oznacza, że nie działa? Skąd pochodzi $login i $haslo?
kret
$login i $haslo pochodzą z formularza logowania, nie działa to znaczy po mimio podania prawidłowego hasła i loginu nie jest realizowany dalszy blok instrukcji w postaci wyświetlenia trześci strony tylko wyświetlony zostaje formularz logowania. Prwaidłowo chodzi tylko w przypadku loginu i hasła, które stanowią ostatni element tablicy. A ponieważ jestem zielony w tej materii, prosił bym o pomoc w postaci przystępnej dla nowicjuszy.
KaMeLeOn
Jeśli chodzi o $login i $haslo zapoznaj się z tablicą $_POST...
U mnie z kodem nie ma problemu, musi być więc błąd w dalszej części...
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-2024 Invision Power Services, Inc.