Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Usuwanie treści PHP
Dariusz_512
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 2.04.2007

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


Witam

Mam bazę danych w pliku TXT.

Otwieram

  1. <?php
  2. $nazwa = 'db.txt';
  3. $plik = fopen($nazwa,"r");
  4. $zmienne = fread($plik,filesize($nazwa));
  5. ?>


Wyświetlam i edytuje. To co powpisuje do formularzy trafia na sito funkcji kilku funkcji implode.
Powstaje w końcu zmienna $dozapisu której treść ma nadpisać dotychczasowe dane w bazie. Jak mam je skasować? Przydałby się tryb otwarcia pliku tylko do nadpisania (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Dzięki z góry.

Ten post edytował Dariusz_512 6.01.2009, 17:49:10
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




O ile dobrze Cię zrozumiałem to otwórz plik w trybie 'w+' zamiast 'r'. Spowoduje to otwarcie pliku do zapisu z wcześniejszym skasowaniem aktualnej zawartości.
Go to the top of the page
+Quote Post
Skie
post
Post #3





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


Cytat(phpion @ 6.01.2009, 17:50:25 ) *
O ile dobrze Cię zrozumiałem to otwórz plik w trybie 'w+' zamiast 'r'. Spowoduje to otwarcie pliku do zapisu z wcześniejszym skasowaniem aktualnej zawartości.


Z tego co pamiętam to takie otwarcie pliku rzeczywiście, skasuje zawartość, ale NIE zapamięta zawartości. Zrobiłbym to na Twoim miejscu tak:

1. Otworzył plik db.txt w trybie 'a+'
2. Pobrał zawartość tak jak to teraz robisz, aż będziesz mieć tą zmienną $dozapisu
3. za pomocą funkcji ftruncate() wyczyścił otwierany plik.
4. A na koniec zapisał $dozapisu za pomocą fwrite() i zamknął potem plik fclose()

To tyle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Skie 6.01.2009, 18:01:08
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: 18.10.2025 - 13:03