Cookie and session relationship and difference, etc., cookiesession difference
I. Introduction of Cookies
Cookies are often used to identify users. A cookie is a small file that the server leaves on the user's computer. Whenever the same computer requests a page through a browser, it also sends a cookie. With PHP, you can create and retrieve the value of a cookie.
1. Set Cookies
PHP uses the Setcookie function to set cookies.
The Setcookie function defines a cookie and attaches it behind the HTTP header, and the Setcookie function is prototyped 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 valid
Note: The cookie that is currently set does not take effect immediately, but is not visible until the next page. This is due to the fact that the cookie is passed to the client's browser on this page and the next page browser will be able to remove the cookie from the client's machine and return it to the server.
Examples of Use:
Normal use:
Setcookie (' name ', ' php Huaibei ');
With time of failure:
Setcookie (' name ', ' php Huaibei ', Time () +24*60*60);//1day
Cookies are path-oriented and are stored by default under the current file, and if no path is set, cookies under different files are saved in different folders by default and saved under 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 ways PHP uses HTTP to get user data are: Post method, get method and cookie. The PHP default delivery method is a cookie and is the best method.
For example, setting up a cookie,php named Mycookier will automatically parse it from the HTTP header received by the Web server and form a variable like the normal variable named $mycookie, which is the value of the cookie.
3. Delete Cookies
There are two ways to delete an already existing cookie:
One is to call the Setcookie with the name parameter only, then the cookie named this name will be deleted from the connections machine, for example: Setcookie (' name ', ' ");
Another option is to set the cookie to expire at time () or 1, and then the cookie is deleted after the page has been browsed (it is actually invalid). For example: Setcookie (' name ', ' php Huaibei ', Time () -24*60*60);
Note that when a cookie is deleted, its value is still valid on the current page.
Precautions for using cookies:
First, it must be set before the content output of the HTML file (the cookie is part of the HTTP protocol header for passing information between the browser and the server, so the cookie function must be called before any content output that belongs to the HTML file itself.)
The PHP page can be used first
Ob_start ();//Open
Code .....
Ob_end_flush (); Refresh Cache
Can prevent the header prompt error);
Different browsers do not have the same mechanism for cookie processing
The cookie limit is on the client side. A browser can create a maximum of 30 cookies, and each cannot exceed 4KB, and each Web site can set a total of no more than 20 cookies.
The currently set cookie does not take effect immediately, but will not be visible until the next page
Second, Session Introduction
Session mechanism is a server-side mechanism, the server uses a hash-like structure (or perhaps a hash table) to save information, each site visitor will be assigned to a unique identifier, the session ID, it is stored in two forms: either through the URL is passed, It is stored in the client's cookie. Of course, you can also save the session to the database, which will be more secure, but the efficiency will be reduced. URL delivery security must be too bad, PHP's session mechanism is to set the cookie, save the session ID in the cookie ( Session ID), a session file is generated on the server side, associated with the user, and the Web application stores the data associated with these sessions and passes between pages.
PHP related functions
There are a lot of functions in PHP about sessions, but the ones we use the most are the following:
Session_Start (): Enables the session mechanism to call it at the very beginning of the program file that needs to be used for the session.
Session_register (): Register Session variable
Session_unregister (): Delete Session variable (one delete)
Session_is_registered (): Determine if the session variable is registered
Session_distroy (): Destroys all session variables (all session variables are destroyed, including files)
There are a few things to keep in mind:
1. function session_start () must be executed at the very beginning of the program and cannot have any output in front of it, otherwise
It will appear "Warning:cannot send session Cookie-headers already
Sent "a warning message similar to this.
2. The function Session_register () is used to register related variables to be saved in the session, using the following:
$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 its variable name.
3. Function Session_unregister () is exactly the same as the above function, but functionally opposite, the above function is registered
Session variable, which is the deletion of the specified session variable.
4. Function session_is_registered () is used to determine if the session variable is registered.
5. Function Session_destroy () is mainly used to destroy all session variables when the system logs off and exits, it has no parameters and can be called directly.
The relationship between session and PHP.ini configuration
1,session.save_handler = File
The way to read/write back session data, by default, files. It allows the session management function of PHP to store session data using the specified text file
2,session.save_path = "/xammp/temp/"
Specifies the directory where the session file is saved, can be specified to another directory, but the specified directory must have the httpd daemon owner (such as Apache or WWW, etc.) write permission, or cannot save the session data. It can also be written like this session.save_path = "N;/path" where N is an integer. This allows not all session files to be stored in the same directory, but scattered in different directories. This is useful for servers that handle a large number of session files. (Note: Directories need to be created manually)
3,session.auto_start = 0
If this option is enabled, the session will be initialized for each request of the user. Deprecated, it is best to initialize the session with the Session_Start () display.
QQ20111115173320
: The left side is the session file saved under xammp/tmp/, which is the format of PHP serialization
Right: 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 in PHP serialized format
Source: http://www.cnblogs.com/phphuaibei/archive/2011/11/15/2250082.html
http://www.bkjia.com/PHPjc/1033983.html www.bkjia.com true http://www.bkjia.com/PHPjc/1033983.html techarticle Cookie and session relationship and difference, cookiesession difference one, cookie introduction cookie is often used to identify users. A cookie is a small file that the server leaves on the user's computer. Whenever the same meter ...