PHP - przechowywanie informacji/danych w pliku tymczasowym
| DZIAŁANIE: |
Kod:

Ewentualne Objaśnienia:
Tutaj mamy przykład na wykorzystanie plików tymczasowych (*.tmp). Przykład ogólnie jakiś specjalnie za ciekawy nie jest, ale mamy tutaj kilka nowych rzeczy. Tak więc po kolei :
1). Sprawdzamy czy został wybrany jakikolwiek towar czy też nazwa pliku jest przechowywana w tablicy $_POST - po włączeniu strony oczywiście nie - więc wyświetla się nam pierwszy formularz z polami typu checkbox do wyboru jednego z dwóch towarów.
2). Po zaznaczeniu wysyłamy formularz i oczywiście z racji, że tablica $_POST od zak1 czy też zak2 ( zależnie co tam wybraliśmy ) istnieje ten formularz pierwszy jest pomijany i przechodzimy dalej.
3). Dalej instrukcja warunkowa if sprawdza nam czy został wybrany któryś z towarów, jeżeli tak to mamy do czynienia z pierwszą nową rzeczą - mianowicie funkcja tempnam.
tempnam - tworzy plik o unikatowej nazwie w katalogu określonym w parametrze pierwszym ( w przykładzie c:\windows\temp ). Początek nazwy możemy określić drugim parametrem. Funkcja zwraca nazwę utworzonego pliku.
Tak więc tutaj do zmiennej $nazwapliku przypisana jest nazwa utworzonego pliku tymczasowego.
4). Dalej otwieramy ten plik i wpisujemy do niego wartości z tablicy $_POST['zak1'] oraz $_POST['zak2'] - rzecz jasna jeśli któregoś z towarów nie wybraliśmy nie zostanie wpisane nic! Znaczniki "\n" to oczywiście znaki nowej linii - co w pliku tekstowym oddziela informacje odpowiednimi znacznikami i przy odczycie późniejszym z tego pliku w formie : fgets ($plik,255); - powoduje odczyt danego pojedynczego zapisanego tekstu - wiersza
5). Wyświetla się nam także drugi formularz gdzie mamy podać swoje imię i nazwisko. Jest tam także ukryte pole, które przechowuje jak widać nazwę utworzonego pliku tymczasowego - nie przesyłamy w ukrytych polach informacji o wybranych towarach, gdyż są one pamiętane w pliku, który utworzyliśmy
6). Wysyłamy ten formularz i co się dzieje - pierwsza instrukcja sprawdza czy jest wypełniony któryś z towarów lub nazwa pliku - towarów już w tablicach $_POST nie ma, ale za do z ukrytego pola jest nazwa pliku. Kolejna sprawdza czy są towary - nie ma więc pozostaje do wykonania ostatni kod.
7). Otwieramy utworzony plik tymczasowy - odczytujemy z niego dwie linie, które są informacjami o wybranych wcześniej w pierwszym formularzy towarach. Zamykamy plik i sprawdzamy zmienne $zak1 i $zak2. Jeżeli któraś z nich jest równa 1 ( większa od 0 ) to odpowiadający towar został wybrany - czyli zostało to zapisane w pliku tymczasowym - pojawia się odpowiedni komunikat.
8). Na i na koniec mamy znowu coś nowego - funkcję unlink - jest to funkcja, która usuwa plik podany jako jej parametr.
9). Plik tymczasowy zostaje usunięty! wsio :)