Chào mừng các đã quay trở lại với series hướng dẫn xây dựng trang tin tức bằng PHP, đây là bài thứ 3 trong series. Bài trước, chúng ta đã xây dựng xong thư viện xử lý database admin. Hôm nay mình sẽ hướng dẫn các bạn viết thư viện session và functions trong phần admin. Bây giờ chúng ta bắt tay vào việc nhé !
1. Thư viện session admin
Thư viện này chứa các hàm xử lý session như khởi tạo, lấy, xoá session, … Thư viện này dùng để lưu tài khoản trong đăng nhập và lấy dữ liệu để kiểm tra lệnh SQL và bảo mật các file xử lý. Đầu tiên các bạn vào đường dẫn thư mục admin/classes
và tạo file tên Session.php
. Sau đó các bạn copy đoạn code này và paste vào file :
<?php // Lớp session class Session { // Hàm bắt đầu session public function start() { session_start(); } // Hàm lưu session public function send($user) { $_SESSION['user'] = $user; } // Hàm lấy dữ liệu session public function get() { if (isset($_SESSION['user'])) { $user = $_SESSION['user']; } else { $user = ''; } return $user; } // Hàm xoá session public function destroy() { session_destroy(); } } ?>
Hàm bắt đầu session
// Hàm bắt đầu session public function start() { session_start(); }
Hàm này dùng để bắt đầu session để có thể thực hiện các hành động khác.
Hàm lưu session
// Hàm lưu session public function send($user) { $_SESSION['user'] = $user; }
Hàm này sẽ có một tham số $user
để lưu session
Hàm lấy dữ liệu session
// Hàm lấy dữ liệu session public function get() { if (isset($_SESSION['user'])) { $user = $_SESSION['user']; } else { $user = ''; } return $user; }
Hàm này dùng để lấy dữ liệu session đã lưu. Ở đây mình có một bước kiểm tra có tồn tại session không :
- Nếu có trả về
$user
gán session đã lưu. - Ngược lại nếu không trả về
$user
bằng rỗng.
Hàm xoá session
// Hàm xoá session public function destroy() { session_destroy(); }
Code bên trong khá quen thuộc rồi phải không ? Hàm này dùng để giải phóng session.
2. Thư viện functions admin
Đây là thư viện chứa các hàm để thực thi các hành động trong PHP thuần theo một chuẩn nào đó và nhanh, ngắn gọn hơn. Các bạn vào đường dẫn thư mục admin/classes
và tạo file Functions.php
. Mở file lên và copy đoạn code này vào :
<?php // Hàm điều hướng trang class Redirect { public function __construct($url = null) { if ($url) { echo '<script>location.href="'.$url.'";</script>'; } } } ?>
Hàm điều hướng trang
Hàm này mình sử dụng class để kêu ra luôn nên tên hàm mình sẽ đặt __construct
để nó thực thi hàm bên trong ngay sau khi gọi class. Hàm này có tham số $url
chứa đường dẫn mà mình muốn điều hướng.
Bài viết này được đăng tại [kiso.vn]
Ở đây chỉ có hàm điều hướng trang, mình sẽ cập nhật thêm vào các bài tiếp theo.
3. Lời kết
Hai thư viện này chắc cũng không làm khó đối với các bạn đã quen với PHP OOP phải không nào ? Qua bài sau mình sẽ hướng dẫn các bạn kết nối database và cấu trúc index admin. Cảm ơn các bạn đã theo dõi và chúc các bạn thành công !
Danh sách file tải về
Tên file tải về | Pass giải nén |
---|---|
Bài 3: PHP trang tin tức – Viết thư viện session và functions admin | kiso.vn hoặc gameportable.net |
Bài viết liên quan
[CSF-2] Một số thiết lập CSF, LFD
Hôm nay mình sẽ thực hiện một số thiết lập trên CSF Mở file config để sửa đổi một số tính năng dưới /etc/csf/csf.conf Nội dung chính1. Thư viện session adminHàm bắt đầu sessionHàm lưu...
[CSF-1] Tăng bảo mật Server với ConfigServer Firewall (CSF)
Nội dung chính1. Thư viện session adminHàm bắt đầu sessionHàm lưu sessionHàm lấy dữ liệu sessionHàm xoá session2. Thư viện functions adminHàm điều hướng trang3. Lời kết1. Khái niệm CSF: CSF (ConfigServer & Firewall) là...
Sử dụng SSH Key với Gitlab và Github
Bài viết này mình sẽ hướng dẫn các bạn tạo ssh key cho Gitlab và Github SSH là gì? Secure Socket Shell là một giao thức mạng dùng để thiết lập kết nối mạng một...
Directory traversal vulnerabilities (phần 4)
Nội dung chính1. Thư viện session adminHàm bắt đầu sessionHàm lưu sessionHàm lấy dữ liệu sessionHàm xoá session2. Thư viện functions adminHàm điều hướng trang3. Lời kếtV. Phân tích và khai thác các lỗ hổng...
Directory traversal vulnerabilities (phần 3)
Nội dung chính1. Thư viện session adminHàm bắt đầu sessionHàm lưu sessionHàm lấy dữ liệu sessionHàm xoá session2. Thư viện functions adminHàm điều hướng trang3. Lời kếtV. Phân tích và khai thác các lỗ hổng...
Directory traversal vulnerabilities (phần 2)
Nội dung chính1. Thư viện session adminHàm bắt đầu sessionHàm lưu sessionHàm lấy dữ liệu sessionHàm xoá session2. Thư viện functions adminHàm điều hướng trang3. Lời kếtIII. Vì sao lỗ hổng Directory traversal xuất hiện?...