Home Backend Development PHP Tutorial The relationship and difference between COOKIE and SESSION, etc.

The relationship and difference between COOKIE and SESSION, etc.

Aug 08, 2016 am 09:20 AM
cookie php session string

1. Cookie introduction

Cookies are often used to identify users. Cookies are small files that a server leaves on a user's computer. Whenever the same computer requests a page through the browser, it also sends the cookie. With PHP, you can create and retrieve cookie values.

1. Set Cookie

PHP uses the SetCookie function to set Cookie.

The SetCookie function defines a Cookie and appends it to the end of the HTTP header. The prototype of the SetCookie function is as follows:
int SetCookie(string name, string value, int expire, string path, string domain, int secure );

Parameter description: cookie name, cookie value, expiration time (int), valid path, limited domain name, https delivery is only valid

Note: The currently set cookie does not take effect immediately, but will wait until You can only see it on the next page. This is because the cookie is passed from the server to the client's browser on the set page, and the browser can take the cookie out of the client's machine and send it back to the server on the next page.

Usage example:

Normal use:

setcookie('name','PHP Huaibei');

with expiration time:
setcookie('name','PHP Huaibei',time()+24*60*60);//1day

Cookies are path-oriented and are stored in the current file by default. If the path is not set, cookies in different files are saved in different folders by default. Below, as shown in the picture: Saved in the mytest folder by default

sss

2. Receiving and processing Cookies

The web communication protocol between the client and the server is http. The three commonly used methods for PHP to obtain user data through http are: POST method, GET method and Cookie. The default delivery method of PHP is Cookie, which is also the best method.

For example, if you set a cookie named MyCookier, PHP will automatically analyze it from the HTTP header received by the WEB server and form a variable like an ordinary variable named $myCookie. The value of this variable is Cookie. The value

3, delete the cookie

To delete an existing cookie, there are two ways:

One is to call SetCookie with only the name parameter, then name it this The cookie of name will be deleted from the related user computer; for example: setcookie('name','');
Another way is to set the Cookie expiration time to time() or time()-1, then this Cookie After browsing this page, it was deleted (in fact, it became invalid). For example: setcookie('name','PHP Huaibei',time()-24*60*60);
It should be noted that when a cookie is deleted, its value is still valid on the current page.
Notes on using cookies:

First of all, it must be set before the content of the HTML file is output (Cookies are part of the HTTP protocol header and are used to transfer information between the browser and the server, so they must be used in any HTML file The Cookie function is called before the content of the file itself is output.
You can use

ob_start(); //Enable

code...

ob_end_flush(); //Refresh the cache

can prevent header prompt error);

Different browsers have different processing mechanisms for cookies
Cookie restrictions are on the client side. The maximum number of cookies that can be created by a browser is 30, and each cookie cannot exceed 4KB. The total number of cookies that can be set by each WEB site cannot exceed 20.
The currently set cookie does not take effect immediately, but will be visible until the next page

2. Session introduction

The session mechanism is a server-side mechanism. The server uses a structure similar to a hash table (or a hash table) to save information. Each website visitor will be assigned a unique identifier, that is, a session ID. , it can be stored in two ways: either passed through the URL, or stored in the client's cookies. Of course, you can also save the Session in the database, which will be safer, but the efficiency will be reduced. Passed by URL The security is definitely too poor. PHP's session mechanism is to set a cookie and save the session ID (Session ID) in the cookie. A session file will be generated on the server side and associated with the user. The web application stores data related to these sessions. And transferred between pages.

PHP related functions

There are many functions related to Session in PHP, but these are the most commonly used functions:

session_start(): Enable the session mechanism and call it at the beginning of the program file that needs to use the session.

session_register(): Register session variables

session_unregister(): Delete session variables (one by one)

session_is_registered (): Determine whether the session variable is registered

session_disstroy(): Destroy all session variables (all session variables are destroyed, including files)

You need to pay attention to the following aspects:

1. Function session_start() It must be executed at the beginning of the program, and there cannot be any output content in front of it. Otherwise, a warning message like "Warning: Cannot send session cookie - headers already

sent" will appear.

2. The function session_register() is used to register relevant variables to be saved in the session. Its usage is as follows:

$val = "session value";

session_register("val ");

?>

val is the name of the session variable to be registered. Do not add the "$" symbol when registering, just write the variable name.

3. The function session_unregister() has exactly the same usage as the above function, but the function is opposite. The above function registers the

session variable, while it deletes the specified session variable.

4. The function session_is_registered() is used to determine the session Whether the variable is registered.

5. The function session_destroy() is mainly used to destroy all session variables when the system logs out and exits. It has no parameters and can be called directly.

Configuration of the relationship between Session and PHP.ini

1, session.save_handler = file

is used to read/write back session data, the default is files. It will let PHP's session management function use the specified text file to store session data

2, session.save_path = "/xammp/temp/"

Specify the directory to save the session file, you can specify Go to another directory, but the specified directory must have write permissions from the owner of the httpd daemon (such as apache or www, etc.), otherwise the session data cannot be restored. It can also be written like session.save_path = "N;/path" where N is an integer. This means that not all session files are saved in the same directory, but are scattered in different directories. This is helpful when the server handles a large number of session files. (Note: The directory needs to be created manually)

3, session.auto_start = 0

If this option is enabled, the session will be initialized for each user request. Not recommended, it is better to initialize the session explicitly through session_start().

QQ screenshot 20111115173320

Above picture: The left side is the session file saved under xammp/tmp/, the content is in PHP serialized format

The right side: The first line is echo serialize($_SESSION['name']);//Serialization

The second line is to print the session value

************************ where the file name is session-name and the content is the PHP serialization format

source :http://www.cnblogs.com/phphuaibei/archive/2011/11/15/2250082.html

The above has introduced the relationship and differences between COOKIE and SESSION, including the relevant aspects. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

CakePHP Project Configuration CakePHP Project Configuration Sep 10, 2024 pm 05:25 PM

In this chapter, we will understand the Environment Variables, General Configuration, Database Configuration and Email Configuration in CakePHP.

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

CakePHP Date and Time CakePHP Date and Time Sep 10, 2024 pm 05:27 PM

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

CakePHP File upload CakePHP File upload Sep 10, 2024 pm 05:27 PM

To work on file upload we are going to use the form helper. Here, is an example for file upload.

CakePHP Routing CakePHP Routing Sep 10, 2024 pm 05:25 PM

In this chapter, we are going to learn the following topics related to routing ?

Discuss CakePHP Discuss CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

How To Set Up Visual Studio Code (VS Code) for PHP Development How To Set Up Visual Studio Code (VS Code) for PHP Development Dec 20, 2024 am 11:31 AM

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

CakePHP Creating Validators CakePHP Creating Validators Sep 10, 2024 pm 05:26 PM

Validator can be created by adding the following two lines in the controller.

See all articles