Mnie ciekawi dlaczego ta petla kreci sie od 0 do sizeof($linia) wlacznie, skoro $linia[sizeof($linia)] jest chyba poza zakresem (o ile to dziala tak jak w C).
Ja bym jeszcze na poczaku dal po $i=0; rowniez $auth=0, bo pewnie po naprawieniu warunku petli trzeba bedzie sie zabezpieczyc przed tym, ze petla sie nie obroci ani razu.
A dlaczego nie dziala - nie wiem. Moze break w php dziala jakos dziwnie
EDIT:
BTW - ten plik nie ma na koncu nowej linii? Bo jezeli tak, to tez Ci sie wywali pod koniec (jak petla nie odnajdzie hasla i dojdzie do konca).
EDIT2:
Hmm, a moze jeszcze sprawdz czy dobrze sie przekopiowaly klamerki ...