Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> przeszukiwanie pliku, zastosowanie tablic
xmarko
post
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 26.02.2004

Ostrzeżenie: (0%)
-----


mam taki format zapisu w pliku :
Kod
1/SYS|$$|wejscie|$$|droga|$$|ip|$$|
bbbbb|$$|2/SYS|$$|droga3|$$|ip5|$$|

Piszę skrypt do sprawdzenia czy wystepuje zapis w pliku
Oto skrypt
  1. <?php
  2.  
  3. $plik_nazwa = &#092;"wyst_karty.dat\" ;
  4. $numer = &#092;"2/SYS\" ;
  5.  
  6.  
  7. $tablica = file($plik_nazwa);
  8.  
  9. for ($i=; $i < count($tablica); $i++)
  10. {
  11. $tab = explode (&#092;"|$$|\",$tablica[$i]);
  12.  
  13. for ($ii=; $ii < count($tab); $ii++)
  14. {
  15. if (in_array($numer , $tab[$ii]))
  16. {
  17. echo &#092;"taki numer karty już isnieje - popraw\";
  18. $numer=$numer+1;
  19. break;
  20.  
  21. }
  22. else 
  23. {
  24.  echo &#092;"nie ma\";
  25.  break;
  26.  } 
  27. } } 
  28.  
  29.  
  30. ?>

Skrypt ma za zadanie sprawdzić w każdej lini czy jest w niej zawarty zapis w zmiennej $numer.
Zmienna $numer może pojawiac się w róznym miejscu lini.
Niestety skrypt nie działa , Nie mam pojęcia gdzie i w jaki sposób należy go zmodyfikować .
Prosze o pomoc . Z góry dziękuję.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
xmarko
post
Post #2





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 26.02.2004

Ostrzeżenie: (0%)
-----


Zdaje sobie sprawę, że marudzę.
A le może jeszcze raz zapis w pliku np :
Kod

1/SYS|$$|AAAA|$$|BBBB|$$|cccc|$$|
DDDDD|$$|EEEEE|$$|2/SYS|$$|FFFF|$$|
DDDDD|$$|EEEEE|$$|sssss|$$|3/SYS|$$|


  1. <?php
  2.  
  3. $nazwa_pliku = &#092;"wyst_karty.dat\" ;
  4. $numer = &#092;"2/SYS\" ; // przykładowo , można szukać np \"1/SYS\" - podawane przez formularz ($_POST[numer]) 
  5.  
  6. ?>

Założenia skryptu:
$numer może wystepowac w różnych miejscach w pliku,
1)umieszczenie zapisu pliku w tablicy (file),
2) przeszukuje plik linia po lini rozdzielając linijki na człony ( explode("|$$|" , .......),
3) szuka występowania $ numer,
4) jeżeli znajdzie -> echo "znalazłem",
5) jeżeli nie znajduje -> echo "nie występuje",
6) informacja o wyniiku wyszukiwania wyswietlan jest tylko raz dla wszystkich wyników (jeżeli $numer występuje kilka razy -> tylko jedna informacja).

Niestety nie moge sobie z tym poradzić
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 02:14