PHP z COOKIES - pamiętanie danych z formularza
| DZIAŁANIE: |
Kod:
KOD PRZED WSZELKIMI ZNAKAMI :

KOD
W SERWISIE :

Ewentualne Objaśnienia:
Tutaj mamy przykład na prostym formularzu, który pobiera jedynie imię i
nazwisko od użytkownika. Ideą zastosowania tutaj ciasteczek, jest pamiętanie lub
też nie - zależnie czy wypełniający formularz tego chce czy nie - danych przez
niego wprowadzonych w cookies.
Istotą jest tutaj ustawienie ciasteczek o odpowiedniej wartości - czyli wartości
pobrane z formularza, oraz odpowiednie zaprogramowanie opcji VALUE dla każdego z
pól tekstowych formularza. Kojarzycie, że podobną rzecz można było uzyskać
poprzez nadawanie opcji VALUE wartości tablicy $_POST o indeksie o nazwie danego
pola - tutaj jest to samo tylko nadajemy wartość tablicy $_COOKIE, która de
fakto przechowuje wartości przekazane z tablicy $_POST.
Kod skomplikowany nie jest, ale jednak troszkę go wyjaśnię :
PIERWSZY KOD
1). Kod pierwszy pierw ustawia zmienne kolejno $imie oraz $nazwisko zawierające
to co użytkownik podał w formularzu - pamiętacie jak mówiłem, że zależnie od
mode rewrite takie zmienne trzeba albo i nie ustawiać - ale o tym było
wcześniej.
Dalej są ustawiane zmienne $imiecookie oraz $nazwiskocookie zawierające dane z
ciasteczek, czyli generalnie te zmienne odwołują się do tego co pamiętają lub
też nie cookies.
Jak widać przed odwołaniem się do tablicy POST czy COOKIE mamy funkcję
htmlspecialchars. O niej również już mówiłem, tutaj dodam tylko tyle, że
zastosowałem ją do cookies bo tak naprawdę nigdy nie wiadomo co tam jest,
użytkownik chcąc nam zaszkodzić może manipulować cookies.
2). Dalej w tym pierwszym kodzie sprawdzane jest czy formularz jest wypełniony - jeśli tak sprawdzane dalej czy użytkownik zażyczył sobie pamiętanie wpisanych przez niego danych. Jeżeli tak ustawiane są dwa cookie pamiętające imie oraz nazwisko wpisane przez użytkownika. Jeśli użytkownik nie chciał aby pamiętano dane, ustawiane są te cookies, ale z pustymi wartościami.
DRUGI KOD
1). Sprawdzamy czy formularz jest wypełniony. Jeśli tak wyświetlane nam są
informacje, które podaliśmy oraz link do powrotu - jeżeli wybraliśmy pamiętanie
cookies to po powrocie formularz będzie wypełniony nadal danymi, które ostatnio
podaliśmy.
2). Jeżeli formularz nie został wypełniony ( oba pola rzecz jasna ) zostaje on wyświetlony.
Wsio :)