Этот вопрос конкретно посвящен правильному внедрению безопасности сеанса в среде, основанной на функции/ООП/MVC.безопасность сеанса в ООП/MVC
Я знаком с безопасностью сеанса в процессуальном файле - если у меня есть файл control_panel.php, написанный процедурно, я могу просто проверить безопасность сеанса в верхней части страницы или всякий раз, когда логика подсказывает, что это будет первый загружен.
Тем не менее, я новичок в OOP/MVC, и мои страницы теперь представляют собой просто набор функций!
Надеюсь, мне не нужно проверять безопасность сеанса в каждой функции ..?
Обратите внимание, что я использую CodeIgniter2.
Вот пример моего кода:
<?php
class Main_controller extends CI_Controller {
public function __construct() {
parent::__construct();
}
public function index() {
//$this->load->view(my_view);
//run some code
}
public function function1() {
//$this->load->model(my_model);
// run some code
}
private function function2() {
//$this->load->view(my_view2);
//run some code
}
?>
И в процедурной странице PHP, было бы просто выглядеть следующим образом:
<?php
// check user login
if (isset($_SESSION["user"]) && !empty($_SESSION["user"])) {
// all of the code on the page
}
?>
Похоже, что проверка безопасности сеанса только в верхней части страницы для ООП не работает. Я нахожу, что если я перейду на сайт www.mysite.com/Main_controller/function1/, он просто загрузит функцию1. – jeremy