ďťż

[php] problem z zalogowaniem :/

       

Podstrony


telcocafe

Witajcie :rolleyes:

mam pewien plik rejestracja.php

<?php function info($s) {    echo $s;     } function sprawdz(){ $plik = file("private/login.php"); $ile = count($plik); for($i=0;$i<$ile;$i++) { $tab = explode("|",$plik[$i]); if ($_POST['login'] == $tab[0]){ echo "Podany login już istnieje"; exit; } } } if (isset($_POST['login'])) {        $blad='';   sprawdz();    if ($_POST['haslo'] != $_POST['check_haslo']) $blad='Podano złe hasło!';    if (! ereg ("^.+@.+\..+$", $_POST['email'])) $blad='Podaj poprawny adres e-mail!';  if ($blad!='') info($blad);  else {         $plik=fopen('private/login.php','a');     fputs($plik,$_POST['login']);     fputs($plik,"|");     fputs($plik,$_POST['haslo']);     fputs($plik,"|");     fputs($plik,$_POST['email']);     fputs($plik,'<br>');     fclose($plik);       info('Użytkownik został poprawnie zarejestrowany.');     return;  } } else {   $_POST['login']='';   $_POST['haslo']='';   $_POST['check_haslo']='';   $_POST['email']=''; } ?> <form action="rejestracja.php" method=post> <b>Login:</b>&nbsp; <input type="text" name="login" size=25 style="font-family: Verdana, Arial; font-size: 11px" value="<?php echo $_POST['login']; ?>" /><br> <b>Hasło:</b>&nbsp; <input type="password" name="haslo" size=25 style="font-family: Verdana, Arial; font-size: 11px"><br> <b>Potwierdź hasło:</b>&nbsp; <input type="password" name="check_haslo" size=25 style="font-family: Verdana, Arial; font-size: 11px"><br> <b>Adres E-mail:</b>&nbsp; <input type="text" name="email" size=25 style="font-family: Verdana, Arial; font-size: 11px" value="<?php echo $_POST['email']; ?>" /><br> <input type="submit" style="FONT-FAMILY: verdana, arial, geneva; FONT-SIZE: 9pt" name="submit" value="Rejestruj"> </form>

i logowanie.php

<?php $plik = file("private/login.php"); $ile = count($plik); for($i=0; $i<$ile; $i++){ $tab = explode("|",$plik[$i]); if ($tab[0] ==$_POST['login']){ if ($tab[1] == $_POST['haslo']){ require "jakas_strona.php"; } else echo "Złe hasło"; exit; } else echo "Nie ma takiego loginu"; exit; } ?>

I teraz tak:

- Jak zarejestruje się pierwszy user to ok.. zalogować się może.. ale jak zarejestruje się drugi user to on zalogowac sie już nie może :mellow:

Wiem, że pewnie chodzi coś z "|" (proszę zlukać kod), ale nie wiem jak to naprawić :unsure:

Proszę o pomoc

+ Plus mam pytanie jak zabezpieczyć plik login.php przed zwykłymi userami.. myślałem, aby dawać nowych userów między znacznikami <? i ?>, ale coś mi nie wychodziło więc proszę o radę jak to zrobić :rolleyes:
Użytkownik sueconfess edytował ten post 27 czerwiec 2006, 11:26


Nie przyglądałem się za bardzo ale powinno być:
<?php $plik = file("private/login.php"); $ile = count($plik); for($i=0; $i<$ile; $i++){ $tab = explode("|",$plik[$i]); if ($tab[0] ==$_POST['login']){ if ($tab[1] == $_POST['haslo']){ require "jakas_strona.php"; exit; } else echo "Złe hasło"; exit; } } echo "Nie ma takiego loginu"; exit; ?>
Bo sprawdzałeś tylko pierwszą linię pliku, i jeśli się nie zgadzało to od razu wyświetlało błąd.

nie działa mi to

chciałbym dodać że plik z danymi wygląda tak:

login|haslo|e-mail login2|haslo|e-mail
Użytkownik sueconfess edytował ten post 27 czerwiec 2006, 11:45
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.