Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Licznik - problem
Forum PHP.pl > Forum > Przedszkole
Gość_marcim_*
Witam!
Skończyłem naukę php dotyczącą plików txt. Mam problem, napisałem sobie skrypt:
Kod:
  1. <?php 
  2.  
  3. if (file_exists("licznik.txt")) 
  4. { 
  5.  
  6. $wp = fopen("licznik.txt", 'rw'); 
  7.  $e = fgets($wp, 999); 
  8. ++$e; 
  9. fwrite($wp, $e); 
  10. fclose($wp); 
  11. } 
  12. ?>

i już to nie działa, tzn nie zapisuje do pliku kolejnej liczby, a w pliku txt wpisałem wartość początkową, 1, a plik też zzostał otworzony w celu odczytu i zapisu. Nie generuje żadnego błedu.
Gość
Ja tam się nie znam na php, ale czy nie lepiej zrobić z tego funkcję i na końcu dodać "nazwa_funkcji();".. Coś w tym stylu. Wiem, że jesteś po txt, ale... Wiesz, ja jak się uczyłem ActionScript'a we Flashu.. ;].
Ludvik
Tryb r+, a nie rw. Poza tym dobrze by było zrzutować zmienną $e na liczbę całkowitą.
  1. <?php
  2. $e = intval(fgets($wp, 999));
  3. ?>

Poza tym, w ten sposób dopisujesz chyba dane na koniec pliku. Dobrze by było ustawić wskaźnik na początek pliku funkcją rewind" title="Zobacz w manualu php" target="_manual.
Gość
A czy da się w php nadpisać tekst znajdujący się w pliku txt? Bez użycia funkcji rewind (tak pytam z ciekawosći)
Gość_marcim_*
A tryb r+ to " otwarcie pliku do odczytu i zapisu poczynając od początku pliku" więc jaki ma sens przewijanie?
nospor
http://pl.php.net/manual/pl/function.fopen.php
i sie przyjrzyj na naparemtry wywolania. szczegolnie zwroc uwage na w i w+
Gość_marcim_*
Przeglądnąłęm się ale piszę że bieżąca zawartość zostaje skasowana, więc po zakończeniu otrzymuję pusty plik, czy ja coś źle robię? Kod:
<?php if (file_exists("licznik.txt")) { $wp = fopen("licznik.txt", 'w+'); $e = fgets($wp, 999); ++$e; fwrite($wp, $e); fclose($wp); } ?>
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.