Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Porównywanie informacji
Forum PHP.pl > Forum > Przedszkole
Niedowiarek
Witam, robię mój pierwszy skrypt logowania i rejestracji i napotkałem już problem z którym nie bardzo mogę sobie poradzić. Otóż mój skrypt rejestracji działa tak, że otwieram plik baza.txt i sprawdzam czy podany login już istnieje w pliku, jeżeli tak to jest informacja o niepowodzeniu operacja. Moje pytanie brzmi, jakiej pętli użyć aby porównać zmienną z ciągiem wyciągniętym z pliku?

  1. <?php
  2. $login = $_POST['login'];
  3. $haslo = $_POST['haslo'];
  4. $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
  5.  
  6. $ciagwyjsciowy = "/t".$login."/t".$haslo."/t";
  7.  
  8. $wp fopen( "$DOCUMENT_ROOT/../www/baza.txt", 'ab');
  9. flock($wp, LOCK_EX);
  10.  
  11. $sprawdzenie = fgetcsv($wp, 100, "/t");
  12.  
  13.  
  14. // Tu jakaś pętla sprawdzająca
  15.  
  16.  
  17.  
  18. ?>
darko
Pewnie coś takiego:

  1. $wp = fopen( "$DOCUMENT_ROOT/../www/baza.txt", 'ab');
  2. $hit = false;
  3. while ($sprawdzenie = fgetcsv($wp, 100, "/t"))
  4. {
  5. if(in_array($login, $sprawdzenie))
  6. {
  7. $hit = true;
  8. break;
  9. }
  10. }
  11. if($hit)
  12. echo 'podany login jest już zarezerwowany';
  13. else
  14. // dalsze czynności
kadlub
  1. <?php
  2. $login = $_POST['login'];
  3. $haslo = $_POST['haslo'];
  4. $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
  5.  
  6. $ciagwyjsciowy = "/t".$login."/t".$haslo."/t";
  7.  
  8. $wp = fopen( "$DOCUMENT_ROOT/../www/baza.txt", 'r')or die("nie można otworzyć pliku");
  9. $info=false;
  10. flock($wp, LOCK_EX);
  11. while(!feof($wp)){
  12. $wiersz=fgets($wp ,100);
  13. $sprawdzenie=explode("/t",$wiersz);
  14.  
  15. if(in_array($login,$sprawdzenie)){
  16. $info=true;
  17. break;
  18. }
  19. }
  20. if($info){
  21. echo 'login jest już zajęty';
  22. }
  23. ?>
  24.  


ja zrobiłem trochę inaczej niż kolega wyżej
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-2025 Invision Power Services, Inc.