ďťż
Podstrony
|
telcocafeOtwieram plik, odczytuje wartość, zwiększam o 1, zapisuję nową wartość do pliku iii ... wszystko działa ładnie i pięknie, ale problem pojawia się gdy zmienna znajduje się pomiędzy innymi liniami w pliku.Zasada działania jest jak w liczniku odwiedzin, ale zmienna jest pomiędzy innymi liniami. Pyt. Jak podmienić zmienną w pliku, która nie znajduje się na jego początku? <? $numer_linii_z_licznikiem = 2; $plik = file('nazwa_pliku'); $plik[$numer_linii_z_licznikiem]++; $plik[$numer_linii_z_licznikiem]."\n"; $fp = fopen('nazwa_pliku', 'w'); foreach($plik as $linia) { fwrite($fp, $linia); } ?> Nie sprawdzałem, ale powinno działać. Dodam jeszcze, że było już wałkowane... Tylko mi to jeszcze wytłumacz, bo ja chce to umieć aby nie zadawać znów zbędnych pytań ;) A może prościej mi będzie jak po odczytaniu FGets przesune znacznik na początek tej linii i nazpisze FWrite? Tylko co przesuwa znacznik na początek LINII a nie pliku? //Udziergałem takie coś - to kod na zwiększanie danej pod podaną nazwą: function AddClick() { $File = File('plik.txt'); $Licznik = 1; while (!$File[$Licznik] == 'nazwa zmiennej nad wartością') { $Blank = FGets($File[$Licznik]); $Licznik = $Licznik + 1; } $Licznik = $Licznik + 1; $Value = $File[$Licznik]; $Value = $Value + 1; $File[$Licznik] = $Value; $File[$Licznik] = $File[$Licznik]."\r\n"; $Plik = FOpen('plik.txt','w'); foreach($File as $Linia) { FWrite($Plik,$Linia); } FClose($Plik); } JESTEM GENIALNY :P :P :P Użytkownik mariuszlorenc edytował ten post 15 styczeń 2006, 18:54 |
|||
Sitedesign by AltusUmbrae. |