Hướng dẫn how do you control user access in php application? - làm thế nào để bạn kiểm soát quyền truy cập của người dùng trong ứng dụng php?

Tại một điểm nhất định, ứng dụng của bạn sẽ cần xử lý quyền truy cập của người dùng và kiểm soát từng người dùng cụ thể với nội dung cụ thể. Ví dụ phổ biến nhất mà chúng tôi sẽ gặp sẽ là người dùng thường xuyên và người dùng quản trị. Người dùng thường xuyên chỉ nên xem nội dung có liên quan đến họ. Người dùng quản trị viên trong nhiều trường hợp sẽ có thể xem tất cả người dùng, thông tin nhạy cảm mà nếu trong tay sai, có thể gây ra thiệt hại cho trang web. Có nhiều cách để có một trang web đơn giản, có bảng điều khiển người dùng thông thường và bảng quản trị. Từ bài đăng trước của tôi về Saving Records vào cơ sở dữ liệu, hãy để Lừa lấy cùng một bảng chúng tôi đã tạo cho người dùng và thêm một trường gọi là USERS_ROLE với kiểu dữ liệu của ENUM và các giá trị của quản trị viên, người dùng.

Tạo bảng người dùng

CREATE TABLE users[
        users_id int[11] NOT NULL auto_increment,
        users_fname VARCHAR[60],
        users_lname VARCHAR[60],
        users_email VARCHAR[60],
        users_pass VARCHAR[32],
        users_role ENUM['admin', 'user'],
        PRIMARY KEY [users_id]
    ];

Bây giờ với trường mới này trong cơ sở dữ liệu, chúng tôi có thể xác định loại người dùng nào đang thực sự truy cập trang web của chúng tôi. Tôi đã thấy rằng cách tốt nhất để xác định loại người dùng là thêm cùng trường này vào biến sessions của chúng tôi khi chúng tôi đăng nhập. Nếu bạn chưa tìm ra cách đăng nhập người dùng, thì hãy xem qua hướng dẫn đó ở đây.

Hãy cùng thực hiện một số thay đổi đối với tệp ‘Validate_login.php của chúng tôi, thêm phiên người dùng. Bằng cách đó, người dùng có thể duyệt qua trang web mà không được yêu cầu xác thực. Điều đầu tiên chúng ta phải làm là bắt đầu session. Sau khi bắt đầu session, chúng tôi xác nhận thông tin đăng nhập của người dùng. Khi thông tin đăng nhập đã được xác minh, chúng tôi sẽ tiếp tục và tạo một biến sessions. Biến này sẽ chứa thông tin duy nhất cho người dùng cụ thể đó, bao gồm vai trò đã được gán cho người dùng đó. Vì vậy, thay vì lặp lại rằng đăng nhập đã thành công, chúng tôi viết một số logic cho nhu cầu của chúng tôi. Hãy để một cái nhìn:

validate_login.php

Lưu ý rằng chúng tôi chuyển hướng người dùng đến trang đăng nhập nếu thông tin đăng nhập không phù hợp. Chúng tôi cũng đã thêm một cái gì đó vào cuối URL. Chúng tôi vừa gửi một lỗi biến, có thể được truy cập thông qua biến

0 trong PHP. Biến này là hiển thị cho người dùng nếu có sự cố với quy trình đăng nhập. Để hiển thị lỗi cho người dùng, chỉ cần hỏi xem biến có được đặt không và nếu vậy, thì hãy hiển thị thông báo lỗi, như thế này:

[withih đăng nhập.php]

Bài Viết Liên Quan

Chủ Đề