| COOKIES
Для передачі даних між сторінками можна використовувати cookies - файли, що пересилаються web-сервером браузеру відвідувача і що зберігаються їм на комп'ютері відвідувача. Всі сучасні браузери підтримують cookie.
Встановивши cookie на одній із сторінок сайту (детальніше про cookies розповідалося в гл. 8 ), ви можете використовувати записані в нього змінні на всіх останніх сторінках сайту (розташовані на тому ж інтернеті-вузлі - тобто з тим же доменним ім'ям).
При
установці cookie йому дається певне ім'я. Згодом сценаріям на всіх сторінках цього інтернету-вузла браузер відвідувача передає при заході на них змінну, що однойменну з цим cookie і містить записані в cookie дані (якщо у файлі php.ini встановлений в on параметр register_globals). Крім того, сценарії на РНР можуть отримувати дані cookie з масиву $HTTP_COOKIE_VARS [ 'ім'я cookie '],ав РНР версій 4.1 і вище - ще і з масиву $_СООК1Е [' ім'я змінної' ] (якщо у файлі php.ini встановлений в on параметр track_vars).
Якщо відомості, передавані через cookie, потрібно захистити від підробки (т. е., скажімо, забезпечити їх здобуття лише з cookie і жодним чином не з адресного рядка, куди значення однойменних із збережених в cookie змінних зловмисник може підставити), то в сценарії, де використовуються змінні з cookies, слід їх прочитувати лише із згаданих масивів, а не з однойменної cookie змінної. У вказані масиви потрапляють виключно ті дані, які збережені в cookies.
Одночасно можна встановлювати як один, так і декілька cookies.
Даний спосіб підійде тоді, коли дані, введені на одній сторінці, можуть потрібно на прямо не пов'язаною з нею інший. Обмеження ж пов'язані з особливостями cookie: кількість інформації в cookie не може перевищувати 4 кілобайти, cookie може викрасти з комп'ютера відвідувача будь-якого, хто за нього сяде. Крім того, деякі користувачі Інтернету відключають cookie при подорожах по Мережі, що не дає можливості використовувати даний спосіб абсолютно для всіх відвідувачів.
Пам'ятаєте, що відправка і читання cookie повинні вироблятися до якого б то не було виводу в документ.
|