|
Sessions
Part:
1
2
3
(Continued from previous part...)
SessionPage2.php:
<?php # SessionPage2.php
# Copyright (c) 2002 by Dr. Herong Yang
#
session_start();
$quantity = $_SESSION['quantity'];
$price = 9.99;
$_SESSION['price'] = $price;
$count = $_SESSION['count'];
$count++;
$_SESSION['count'] = $count;
#
print "<pre>\n";
print "\nI am buying $quantity PHP books.\n";
print "The unit price is $price per book.\n";
#
print "\n<a href=SessionPage3.php>Next</a> ";
print " <a href=SessionPage1.php>Prev</a>\n";
print "\nCounter = $count\n";
print "Session name = ".session_name()."\n";
print "Session id = ".session_id()."\n";
#
print "\nContents of \$_GET:\n";
foreach ($_GET as $k => $v) {
print " $k = $v\n";
}
#
print "\nContents of \$_POST:\n";
foreach ($_POST as $k => $v) {
print " $k = $v\n";
}
#
print "\nContents of \$_COOKIE:\n";
foreach ($_COOKIE as $k => $v) {
print " $k = $v\n";
}
print "</pre>\n";
?>
SessionPage3.php:
<?php # SessionPage3.php
# Copyright (c) 2002 by Dr. Herong Yang
#
session_start();
$quantity = $_SESSION['quantity'];
$price = $_SESSION['price'];
$total = $quantity * $price;
$count = $_SESSION['count'];
$count++;
$_SESSION['count'] = $count;
#
print "<pre>\n";
print "\nI am buying $quantity PHP books.\n";
print "The unit price is $price per book.\n";
print "The total price is $total.\n";
#
print "\n<a href=SessionPage2.php>Prev</a>\n";
print "\nCounter = $count\n";
print "Session name = ".session_name()."\n";
print "Session id = ".session_id()."\n";
#
print "\nContents of \$_GET:\n";
foreach ($_GET as $k => $v) {
print " $k = $v\n";
}
#
print "\nContents of \$_POST:\n";
foreach ($_POST as $k => $v) {
print " $k = $v\n";
}
#
print "\nContents of \$_COOKIE:\n";
foreach ($_COOKIE as $k => $v) {
print " $k = $v\n";
}
print "</pre>\n";
?>
If you run http://localhost/SessionPage1.php, you will get:
I am buying 3 PHP books.
Next
Counter = 1
Session name = PHPSESSID
Session id = o9oipjgc4r3fqmfk8mlldl5sl5
Contents of $_GET:
Contents of $_POST:
Contents of $_COOKIE:
If click "Next" on the first page, you will be running http://localhost/SessionPage2.php,
and you will get:
I am buying 3 PHP books.
The unit price is 9.99 per book.
Next Prev
Counter = 2
Session name = PHPSESSID
Session id = o9oipjgc4r3fqmfk8mlldl5sl5
Contents of $_GET:
Contents of $_POST:
Contents of $_COOKIE:
PHPSESSID = o9oipjgc4r3fqmfk8mlldl5sl5
If click "Next" on the second page, you will be running http://localhost/SessionPage3.php,
and you will get:
I am buying 3 PHP books.
The unit price is 9.99 per book.
The total price is 29.97.
Prev
Counter = 3
Session name = PHPSESSID
Session id = o9oipjgc4r3fqmfk8mlldl5sl5
Contents of $_GET:
Contents of $_POST:
Contents of $_COOKIE:
PHPSESSID = o9oipjgc4r3fqmfk8mlldl5sl5
As you can see, the session concept is working. Several points should be noted here:
- Data can be stored into the session in one page, and retrieve it in another page.
For example, the quantity is stored into the session in the first page, and retrieved
in the second and third page.
- The session name is a string defined in the php.ini file.
- The session ID is created by PHP, and managed as a cookie.
- You can use the session object to manage a count of pages visited in a particular session.
But you can not use the session object to manage a count of pages visited in all sessions.
To manage information across versions, you need something called application object provided in
Active Server Page (ASP).
(Continued on next part...)
Part:
1
2
3
|