Serwis KESS zapisuje informacje w postaci ciasteczek (ang. cookies), czyli małych plików umieszczanych na urządzeniu końcowym użytkownika, podczas przeglądania stron www. Przeglądając serwis wyrażasz zgodę na ich używanie.
Zamknij komunikat

php php5 xhtml css mysql sqlite - projektowanie stron - własny cms

 
Producent farb - nie tylko do betonu. Zobacz nas sklep. Serdecznie zapraszamy.
aksil.pl
Menu główne

Dzisiaj o 30% taniej!



Porady
[PHP] Zapis danych do pliku tekstowego
Krzysztof Szypulski - Piątek, 27 stycznia 2006 23:23:33

Zapis danych do pliku tekstowego jest to jedna z prostrzych, a zarazem jedna z ważniejszych rzeczy jaką powinien opanować początkujący adept php.

PRZYKŁAD

<?php

// zmienna $dane, która będzie zapisana
// może także pochodzić z formularza np. $dane = $_POST['dane'];
$dane = "tekst do wprowadzenia\n";

// przypisanie zmniennej $file nazwy pliku
$file = "baza.txt";

// uchwyt pliku, otwarcie do dopisania
$fp = fopen($file, "a");

// blokada pliku do zapisu
flock($fp, 2);

// zapisanie danych do pliku
fwrite($fp, $dane);

// odblokowanie pliku
flock($fp, 3);

// zamknięcie pliku
fclose($fp);
?>

Często zadajecie pytanie jak zrobić aby dane dopisane do pliku byly na początku a nie na końcu?
Poniżej przykład takiego skryptu.

PRZYKŁAD
<?php

// zmienna $dane, która będzie zapisana
// może także pochodzić z formularza np. $dane = $_POST['dane'];
$dane="$jakas_zmienna\n";

// przypisanie zmniennej $file nazwy pliku
$file="baza.txt";

// uchwyt pliku, otwarcie do odczytu i dopisania
$fp=fopen("$file", "r+");

// dodanie do zmiennej dane poprzedniej zawartości pliku
$dane=$dane.fread($fp, filesize($file));

// ustawienie kursora na początku pliku
rewind($fp);

// blokada pliku do zapisu
flock($fp, 2);

// zapisanie danych do pliku
fwrite($fp, $dane);

// odblokowanie pliku
flock($fp, 3);

// zamknięcie pliku
fclose($fp);
?>


Od wersji 4.3.2 obsługiwany jest jeszcze jeden tryb otwarcia pliku do zapisu x. Tryb ten daje nam możliwość dopisywania do pliku na jego poczatku. Czyli jeżeli wersja PHP na naszym serwerze jest większa lub równa 4.3.2 to możemy stosować poniższy kod zamiast powyższego.

PRZYKŁAD
<?php

// zmienna $dane, która będzie zapisana
// może także pochodzić z formularza np. $dane = $_POST['dane'];
$dane = "tekst do wprowadzenia\n";

// przypisanie zmniennej $file nazwy pliku
$file = "baza.txt";

// uchwyt pliku, otwarcie do dopisania na początku pliku
$fp = fopen($file, "x");

// blokada pliku do zapisu
flock($fp, 2);

// zapisanie danych do pliku
fwrite($fp, $dane);

// odblokowanie pliku
flock($fp, 3);

// zamknięcie pliku
fclose($fp);
?>


rewind()
, fopen(), flock(), fwrite()

Warto zajrzeć:
http://pl.php.net/manual/pl/function.fopen.php
Drukuj Poleć znajomemuCofnij

KESS.com.pl

Zadaj pytanie
Nie znalazłeś(aś) odpowiedzi na nurtujące Cię pytanie?
Zapytaj mnie, może będę umiał Ci pomóc.




Umieść u siebie...
Porady txt
RSS

Losowa książka

Reklama
phpbybastek

Wyjazdy studenckie



Modna i seksowna bielizna damska, męska oraz stroje kąpielowe.

Hosting & design

webmaster html css php mysql

Setki porad dla właścicieli stron WWW

Kurs HTML


Copyright © 2001-2017 by Krzysztof Szypulski • Hosting: Snug.pl
Ogrody dla każdego Agroturystyka CONSTRUCT-TECH