ďťż

Czytanie pierwszej linii pliku w PHP

       

Podstrony


telcocafe

Witam. Mam mały problemik. Oto kod mojego skryptu:
$password = $_POST['haslo']; $flag = false; $file = 'passwords.txt'; $x = 0; $rgFile = file($file); $iOne = sizeof($rgFile-1); while($x<=$iOne) { if($rgFile[$x] == $password) $flag = true; $x++; } if ($flag) echo '<meta http-equiv="refresh" content="0; url=page00.php">'; else {  echo 'Hasło nie zostało podane lub jest niepoprawne... Spróbuj ponownie...<br />';  echo '<meta http-equiv="refresh" content="2; url=pass.php">'; }
Jeżeli dobrze go napisałem, to wydaje mi się, że z pliku passwords.txt powinna zostać wczytana każda linijka, poczynając od zerowej - niestety tak nie jest - wczytują się wszystkie prócz tej pierwszej. Czy ktoś wie, co jest nie tak?



Akurat tu gdzie siedzę, nie mam parsera PHP, więc nie sprawdzę, gdzie jest błąd, ale poczytaj o funkcji file_get_contents()

Dzięki, ale mi chodzi akurat o rozwiązanie konkretnie tego problemu. Wydaje mi się, że teoretycznie wszystko jest ok, a jednak nie wczytuje I linii... Weard :/

Ok, mam parser...

Działa ci to choć trochę? bo u mnie pisze
Fatal error: Unsupported operand types in D:\programy\Apache Group\Apache2\htdocs\tmp.php on line 5
Linia 5 u mnie to:
$iOne = sizeof($rgFile-1);
Mam Apacha 2 i PHP 5

A tak w ogóle co chcesz zrobić?



Chodzi o to, że nie wczytuje mi się 1 linia z pliku passwords.txt i nie wiem czemu :/


Chodzi o to, że nie wczytuje mi się 1 linia z pliku passwords.txt i nie wiem czemu :/
Ech, nie o to pytałem. Chodziło mi co ma ten skrypt robić, czy jakieś logowanie czy coś...

EDIT:
Fajną funkcję znalazłem: in_array()
Użytkownik dodek edytował ten post 22 wrzesień 2005, 13:30
Skrypt sluzy do logowania sie na stronce... Jest najprostszy jaki moze byc - user wpisuje haslo i jezeli wpisze poprawne zostaje przekierowany na wlasciwa strone serwisu...

No to skorzystaj z funkcji in_array(). Najpierw normalnie wczytujesz plik funkcją file(), a potem zmienną z wynikiem przejeżdasz in_array().

Hehe - znuff to samo - pierwszej linii nie widzi :P
No ja sie zastrzele chyba :P
Moze cos nie tak w konfiguracji serwera? Mam Apache 2 i PHP 5.0.5

A podaj treść pliku paswords.txt.

Myślałem, że może to wina notatnika [bo w nim edytowałem plik], ale w dreamweaverze jest to samo :/
Oto kod pliku:
haslo1 haslo2
Użytkownik Hunter747 edytował ten post 22 wrzesień 2005, 15:20
To zrób tak

1. Nie nazywaj plików z tajnymi rzeczami *.txt, bo wystarczy wpisać w przeglądarce adres np. http://strona.pl/passwords.txt i masz wszystkie hasła na tacy.
2. Zmień nazwę pliku na passwords.php
3. Wpisz w nim tak
<? $haslo[0] = 'haslo1'; $haslo[1] = 'haslo2'; ?>
4. A jako skrypt wpisz to:
<? require 'passwords.php'; if(in_array($_POST['haslo'],$haslo) { echo 'masz dostęp'; } else echo 'dupa zbita'; ?>

Hehe - dzięki... Przed chwilą tak zrobiłem ;]
Sorki za kłopot ;]

Nie ma problemu, właśnie po to jest to forum.

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.