Diễn đàn chia sẻ kiến thức tin học

computer internet tin tức source code download rom tin học

Latest topics
» 8 kiểu người ai cũng ngại làm việc chung
Tue 21 Jun 2016, 3:05 am by ADMIN

» Khám phá hòn đảo tình yêu Song Saa bí ẩn nhất thế giới ngay sát vách Việt Nam
Tue 21 Jun 2016, 2:45 am by ADMIN

» Thư gửi em - người anh ấy thương. Cám ơn em đã thay chị yêu thương anh ấy...
Tue 21 Jun 2016, 2:00 am by ADMIN

» Có những phút yêu làm con người ta đau nhói...
Tue 21 Jun 2016, 1:54 am by ADMIN

» Game Bách thú vô song nhập vai thế hệ mới click here to play
Mon 10 Aug 2015, 9:55 pm by ADMIN

» Root LG L90 DUAL SIM
Mon 10 Aug 2015, 9:19 pm by ADMIN

» Viện Hóa Đạo đường Trần Quốc Toản (nay là Việt Nam Quốc Tự)
Mon 10 Aug 2015, 8:53 pm by ADMIN

» PortForward Network Utilities 2.0.15 + Portable
Mon 10 Aug 2015, 7:51 pm by ADMIN

» Cuộc đời có những thứ chúng ta phải lựa chọn...
Mon 10 Aug 2015, 7:42 pm by ADMIN

» Cơn gió lạ thổi qua làng Game Việt
Mon 10 Aug 2015, 7:36 pm by ADMIN

» Đường Tổng Đốc Phương Chợ Lớn (Nay là Châu Văn Liêm Q5)
Mon 10 Aug 2015, 7:12 pm by ADMIN

» Cửu tinh vô song Khuyến cáo nghiêm túc: Đừng Chơi - Đến con gái còn bị nghiện!
Mon 10 Aug 2015, 12:52 pm by ADMIN

» [Bạn biết chưa] 10 mẫu phụ nữ có giá hơn cả "chân dài, ngực khủng"
Mon 10 Aug 2015, 10:07 am by ADMIN

» [phim hoạt hình]Looney Tunes Rabbit Run 2015 1080p WEB-DL DD5 1 H 264-RARBG
Sun 09 Aug 2015, 10:02 pm by ADMIN

» Công an : Bắt được “nội y tặc”
Sun 09 Aug 2015, 9:46 pm by ADMIN

Statistics
Diễn Đàn hiện có 82 thành viên
Chúng ta cùng chào mừng thành viên mới đăng ký: tangkimchi

Tổng số bài viết đã gửi vào diễn đàn là 433 in 389 subjects

You are not connected. Please login or register

Diễn đàn chia sẻ kiến thức tin học » Học tập - trao đổi » PHP » Bài 7: Khái niệm cơ bản về Cookie và session trong PHP

Bài 7: Khái niệm cơ bản về Cookie và session trong PHP

Go down  Thông điệp [Trang 1 trong tổng số 1 trang]

ADMIN

avatar
Admin
Admin
Bài 7: Khái niệm cơ bản về Cookie và session trong PHP



Cookie và session là hai phương pháp sử dụng để quản lý các phiên làm
việc giữa người sử dụng và hệ thống. Việc quản lý phiên làm việc này sẽ
giúp bạn tạo ra sự chứng thực hiệu quả bởi việc xác nhận thông tin
trước khi truy cập vào một phân vùng cố định. Ngoài ra, việc quản lý tốt
phiên làm việc cũng giúp người truy cập cảm thấy dễ dàng sử dụng dịch
vụ của trang web cho những lần truy cập sau. Bởi cớ chế quản lý phiên
làm việc ghi nhận lại quá trình truy cập của người sử dụng khi họ thăm
viếc trang web của bạn lần đầu.



1- Tổng quan về cookie:



Cookie là 1 đoạn dữ liệu được ghi vào đĩa cứng hoặc bộ nhớ của máy
người sử dụng. Nó được trình duyệt gởi ngược lên lại server mỗi khi
browser tải 1 trang web từ server.
Những thông tin được lưu trữ trong cookie hoàn toàn phụ thuộc vào
website trên server. Mỗi website có thể lưu trữ những thông tin khác
nhau trong cookie, ví dụ thời điểm lần cuối ta ghé thăm website, đánh
dấu ta đã login hay chưa, v.v...
Cookie được tạo ra bởi website và gởi tới browser, do vậy 2 website
khác nhau (cho dù cùng host trên 1 server) sẽ có 2 cookie khác nhau gởi
tới browser. Ngoài ra, mỗi browser quản lý và lưu trữ cookie theo cách
riêng của mình, cho nên 2 browser cùng truy cập vào 1 website sẽ nhận
được 2 cookie khác nhau.



a -Thiết lập cookie:



Để thiết lập cookie ta sử dụng cú pháp:


Setcookie("tên cookie","giá trị", thời gian sống)


Tên cookie là tên mà chúng ta đặt cho phiên làm việc.


Giá trị là thông số của tên cookie.


Ví dụ:



Setcookie("username","admin", time() +3600)


Như ví dụ trên ta thấy với tên là username và giá trị là admin, có thời gian sống là 1 giờ tính từ thời điểm thiết lập.


Chú ý: Kịch bản cookie phải đặt trên mọi giá trị trả về bao gồm thẻ HTML và lệnh echo.
Kịch bản cookie phải đặt trên mọi giá trị trả về bao gồm thẻ HTML và lệnh echo.

b - Sử dụng cookie:


Để sử dụng lại cookie vừa thiết lập, chúng ta sử dụng cú pháp:


Cú pháp: $_COOKIE["tên cookies"]


Tên cookie là tên mà chúng ta thiết lập phía trên.


Ví dụ:



Tạo trang cookie.php với nội dung sau:





<?php


setcookie("name","Kenny Huy",time() + 3600);


?>


<html>


<head>


<title>Test page 1</title></head>


<body>


<b><a href=cookie2.php>Click here</a></b>


</body>


</html>



Tiếp tục tạo trang cookie2.php với nội dung sau:





<html>


<head><title>Result Page</title></head>


<body>


<?php


echo "Ten cua ban la <b>".$_COOKIE['name']."</b>";


?>


</body>


</html>



c- Hủy Cookie:



Để hủy 1 cookie đã được tạo ta có thể dùng 1 trong 2 cách sau:


+ Cú pháp: setcookie("Tên cookie")


Gọi hàm setcookie với chỉ duy nhất tên cookie mà thôi


+ Dùng thời gian hết hạn cookie là thời điểm trong quá khứ.


Ví dụ: setcookie("name","Kenny Huy",time()-3600);


Ví dụ:



Tiếp tục tạo trang cookie3.php với nội dung sau:





<?php


setcookie("name","Kenny Huy",time()-360);


?>


<html>


<head>


<title>Test page 1</title></head>


<body>


<b><a href=cookie2.php>Click here</a></b>


</body>


</html>



2- Tổng quan về session:



Một cách khác quản lý người sử dụng là session. Session được hiểu là
khoảng thời gian người sử dụng giao tiếp với 1 ứng dụng. Một session
được bắt đầu khi người sử dụng truy cập vào ứng dụng lần đầu tiên, và
kết thúc khi người sử dụng thoát khỏi ứng dụng. Mỗi session sẽ có được
cấp một định danh (ID) khác nhau và nội dung được lưu trong thư mục
thiết lập trong file php.ini (tham số session.save_path).


a- Thiết lập session:


Để thiết lập 1 session ta sử dụng cú pháp: session_start()


Đoạn code này phải được nằm trên các kịch bản HTML. Hoặc những lệnh echo, printf.


Để thiết lập 1 giá trị session, ngoài việc cho phép bắt đầu thực thi
session. Chúng ta còn phải đăng ký 1 giá trị session. Để tiện cho việc
gán giá trị cho session đó.


Ta có cú pháp sau: session_register("Name")



Ví dụ:





<?php


Session_start();


Session_register("username");


?>



b- Sử dụng giá trị của session:



Giống với cookie. Để sử dụng giá trị của session ta sử dụng mã lệnh sau:


Cú pháp: $_SESSION["name"]
$_SESSION["name"]

Với Name là tên mà chúng ta sử dụng hàm session_register("name") để khai báo.



Ví dụ:



Tạo trang session.php với nội dung sau:





<?php


session_start();


session_register("name");


$_SESSION["name"] = "Kenny Huy";


?>


<html>


<head>


<title>Test page 1</title></head>


<body>


<b><a href=session2.php>Click here</a></b>


</body>


</html>



Tạo trang session2.php với nội dung sau:





<?


session_start();


?>


<html>


<head><title>Result Page</title></head>


<body>


<?php


echo "Ten cua ban la <b>".$_SESSION["name"]."</b>";


?>


</body>


</html>



c- Hủy bỏ session:



Để hủy bỏ giá trị của session ta có những cách sau:


session_destroy() // Cho phép hủy bỏ toàn bộ giá trị của session


session_unset()// Cho phép hủy bỏ session .


Ví dụ:



Tạo trang session3.php với nội dung sau:





<?php


session_start();


session_destroy();


?>


<html>


<head>


<title>Test page 1</title></head>


<body>


<b><a href=session2.php>Click here</a></b>


</body>


</html>



3- Tổng Kết:



Sau bài học này chúng ta đã nắm được cách điều khiển phiên làm việc
giữa cookie và session. Sử dụng chúng trong từng trường hợp cụ thể. Từ
đó có thể áp dụng để viết những ứng dụng nhỏ như kiểm soát người đăng
nhập, làm giỏ hàng online,…..



Bài tập áp dụng:



Xây dựng website sử dụng tính năng session thỏa mãn những yêu cầu sau:






1- Tạo trang đăng nhập với username/password là : admin/vietchuyen.
Nếu user đăng nhập thành công thì sẽ xuất ra dòng welcome, admin.


2- Tạo trang đăng xuất thoát khỏi phần quản trị





(Bùi Quốc Huy)

Nguồn: qhonline.info


_________________
Hướng dẫn download trang adf.ly:
Khi click vào link download, nhìn góc trên bên phải màn hình, chờ đếm ngược 5 giây thôi rồi click vào skip ads, bạn sẽ được đưa đến link download mediafire box.net nhanh phà phà, hjhj

How to download link adf.ly? -> you just click to download link and wait 5 second then click to "SKIP ADS" in top right screen you will redirect to mediafire or box.net link with high download speed ! ENJOY !

Xem lý lịch thành viên http://vantruongvu.forumvi.com

Về Đầu Trang  Thông điệp [Trang 1 trong tổng số 1 trang]

Permissions in this forum:
Bạn không có quyền trả lời bài viết