Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] operacje na pliku (zapis)
FireMan
post
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 4.10.2008
Skąd: Małopolska

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


Witam. Mam taki problem. Oto plik:

  1. $dane = "<a href='ddddd.php'>ddddd</a><br>";
  2. $fp = fopen("zapis.html", "r+");
  3. flock($fp, 2);
  4. fwrite($fp, $dane);
  5. flock($fp, 3);
  6. fclose($fp);


Chodzi mi o to że r+ powinno dodawać to ddddd na początku pliku i jak wczytam plik 5 razy to to ddddd powinno być 5 razy w pliku, ale nie jest tak. Usuwa się poprzednia wartość i daje ta nowa. Nie chce użyć a+ ponieważ chce aby wpisy były wyświetlane tak że te ostatnio dodane są u góry a te stare na dole. SQL nie chce użyć do tego.
Go to the top of the page
+Quote Post
Maxik
post
Post #2





Grupa: Zarejestrowani
Postów: 726
Pomógł: 129
Dołączył: 10.01.2008
Skąd: Gdańsk

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


Jeśli masz jakiś płatny serwer(w każdym razie nie yoyo)to:
  1. file_put_contents('zapis.html', $dane.file_get_contents('zapis.html'));


Ten post edytował Maxik 25.08.2009, 09:44:40
Go to the top of the page
+Quote Post
thek
post
Post #3





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




z Manuala ->r+ Open for reading and writing; place the file pointer at the beginning of the file.
Działa prawidłowo... Problem w tym, że takie otwarcie pliku sprawia jedna rzecz... Dopisują się dane do pliku, ale od jego początku, nadpisując już istniejące dane.
Zrób test
Otwórz r+, wpisz ddddd, zamknij
Otwórz r+, wpisz eeee, zamknij
Otwórz r+, wpisz fff, zamknij
Odczytaj, zdziw się (IMG:style_emoticons/default/winksmiley.jpg)
Uzyskasz: fffed
Stąd pięciokrotne użycie ddddd nie zmieniło w nim nic bo zawsze nadpisywało się samym sobą.

Ten post edytował thek 25.08.2009, 12:33:28
Go to the top of the page
+Quote Post

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: 5.10.2025 - 17:33