Jestem początkującym programistą który zamierza nauczyć się programowania php. Chciałem napisać prosty skrypt rejestracji i logowania opierający się o plik txt w którym będą zapisane linijki tekstu z poszczególnymi mailami i hasłami podzielonymi dwukropkiem. Niestety pętla while (w pliku php który odpowiada za sprawdzenie czy podany przez użytkownika e-mail i hasło istnieje) która ma za zadanie czytanie kolejnych linijek i porównywane ich z wartościami podanymi przez użytkownika aż do chwili skończenia się pliku nie działa tak jak powinna. Problem polega na tym że jest tak jakby pomijana przez kompilator (wstawiałem zamiast while(!feof($plik)) komendę if(!feof($plik)) która działała poprawnie oraz for($i=0;$i<10;i++) która również została pominięta tak samo jak while) Oto napisany przeze mnie kod:
Kod: Zaznacz cały
<?php
function szukaj($a,$b){
$plik = fopen('rejestr.txt','r');
$data[0]=$a;
$data[1]=$b;
$zad=implode(":",$data);
while(!feof($plik))
{
$linia = trim(fgets($plik));
if(strcmp($zad,$linia)==0)
{
fclose('rejestr.txt');
header('Location:dobrze.html');
continue;
}
}
fclose('rejestr.txt');
header('Location:zle.html');
}
$email=$_GET['login'];
$pass=$_GET['haslo'];
szukaj($email,$pass);
?>
Proszę o pomoc i wyjaśnienie mi gdzie popełniłem błąd.