Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z pobieraniem ciągu znaków z pliku tekstowego.
Forum PHP.pl > Forum > PHP
bobo168
Witam! Mam pewien problem z skryptym rejestracji/logowania mojej roboty. Skrypt jest co prawda troche mało fukncjonalny ale dopiero się ucze php. Mój problem polega na tym ,że chce pobrać ciąg znaków zepliku tekstowego tylko że jeszcze nie wiem jakiej funcji do tego użyć (szukałem na forum i znalazłem funkcje file() ale nie znalazłem do niej dokłądnego opisu po polsku a angielski umnie leży....)
A więc prosze was abyście powiedzieli mi jakiej funkcji moge do tego użyć i troche ją opisali...
Dam cały kod tego moje mini "systemu logowania" wraz z opisem żeby było wam łatwiej mi pomuc smile.gif

Plik rejestracja.formularz. Myśle, że tego nie musze opisywać...
  1. <form method="post" action="rejestracja.php">
  2. <table border="0" cellspacing="0" cellpadding="2">
  3. <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">Login:<input type="text" name="login" size=20></div></td>
  4. </tr>
  5. <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">haslo:<input type="text" name="haslo" size=20></div></td></tr>
  6. <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">email:<input type="text" name="email" size=20></div></td></tr>
  7. <td colspan="2" align="center"><input type="submit" class="textbox2" value="Wyslij">
  8. <input type="reset" class="textbox2" value="Wyczysc"></td>
  9. </form>

Plik rejestracja. Ten plik ma za zadanie zapisać wartości formularza do pliku urzytkownicy.php:)
  1. <?
  2. $dataloc="urzytkownicy.txt";
  3. $read=fopen($dataloc, "a");
  4. $fileread = fread($read, filesize($dataloc));
  5. fclose($read);
  6. fwrite (fopen($dataloc, "a+"), "$fileread $_POST[login]$_POST[haslo] $_POST[email]"</td></tr></table>:);
  7. fclose(fopen($dataloc, "a+"));
  8. include($dataloc);
  9. ?>

Plik użytkownicy.txt. Tu są zapisani użytkownicy ich chasła oraz meile wszytsko to zapisuje sie do zmiennej . Narazie ten plik wygląda tak:
  1. <?php
  2. bobo:fgfg bobo168@o2.pl// bobo to login fgfg to chasło...
  3. ?>

Plik login.php mysle ze tego nie trzeba tłumaczyć
  1. <form method="post" action="login.sprawdza.php">
  2. <table border="0" cellspacing="0" cellpadding="2">
  3. <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">Login:<input type="text" name="login2" size=20></div></td>
  4. </tr>
  5. <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">haslo:<input type="text" name="haslo2" size=20></div></td></tr>
  6. <td colspan="2" align="center"><input type="submit" class="textbox2" value="Zaloguj">
  7.  
  8. </form>

Plik login.sprawdza.php plik sprawdzający poprawnośc danych wpisanych w login.php...
  1. <?php
  2. if (tutaj ta funkcja sprawdzaj&#261;ca...) 
  3. {
  4. echo "Zostałeś zalogowany";
  5. }
  6. else
  7. {
  8. echo "nie ";
  9. }
  10. ?>


To by było na tyle. Bardzo prosze o pomoc i z góry za nia dziękuje smile.gif
Cysiaczek
Mozesz napisać, co chcesz pobrać? Nazwę użytkownika, hasło, maila? Wszystko na raz?
Funkcja file() pobiera wszystkie linie z pliku i wczytuje je do tablicy.
Masz wówczas cały plik z ponumerowanymi liniami.
Np. w tym wypadku:
  1. <?php
  2. $tablica=file('uzytkownicy.txt'); //tu się tworzy tablica
  3. foreach ($tablica as $linia){
  4. print $linia.'<br>';
  5. }
  6. ?>

Powyższy kod wyświetli Ci wszystki linie, z pliku uzytkownicy.txt

Teraz jakl chcesz np. z takiej lini otrzymać nazwę użytkownika, to musisz potraktowac ją odpowidnia funkcją, np. aby w z Twojego pliku otrzymać nazwę usera, musisz użyć funkcji
  1. <?php
  2. $linia=explode(':', $linia);
  3. print $linia[0];
  4. ?>


Pobaw się tymi funkcjami - koniecznie musisz je opanowć.

Pozdrawiam
Fipaj
Bez znajomości angielskiego - odradzam naukę php. I tyle.

file_get_contents" title="Zobacz w manualu php" target="_manual, file_put_contents" title="Zobacz w manualu php" target="_manual, crypt" title="Zobacz w manualu php" target="_manual (nigdy nie zapisuj haseł w "czystej" postaci!), itd, itd.
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.