• 22-03-2021, 23:48:14
    #1
    Çözüme ulaştı konu kapanabilir teşekkürler
  • 23-03-2021, 00:00:03
    #2
    Yapmak istediğinizi tam çözemedim hocam eğer const içinde yazarsanız session o controller içindeki tüm sayfalarda login kontrolü yapar.
  • 23-03-2021, 00:23:47
    #3
    Hocam örnekleyerek anlatayım. Şuan bu kontrol ile asd.com/admin/home yazdığımda giriş yapmadığımdan direk /login yönlendiriyor. Amacım zaten bu diyip aynı yapıyı diğer controllerde de kullandığımda direk login atıyor. Buraya kadar her şey istediğim gibi fakat diyelim logine attı girdim başarılı dedi ve ilk sayfam olan asd.com/admin/home attı panelde gidip asd.com/admin/hakkimda'ya girince dışarı atıyor yine logine yönlendiriyor yani kullanımımda bir hata var.
    Dışardan giriş yapmadığımda login atsın ama içeri doğru şekilde user pass ile girince içerdeyken sayfalar arası geçişte de login atıyor.
  • 23-03-2021, 05:31:20
    #4
    sekersizoza adlı üyeden alıntı: mesajı görüntüle
    Home controllers'ta girişi kontrol ediyorum ama bunu diğer controllersta kullanırsam her page değiştirmemde dışarı atıyor. Belki bu kullanımda yanlıştır. Tüm controllerslar için bir yönetim yok mu? Yani nasıl yapabileceğim konusunda net olamadım diye bir bilene soralım
    <?php
    defined('BASEPATH') OR exit('No direct script access allowed');
    
    class Home extends CI_Controller {
    
        public function __construct()
        {
            parent:: __construct();
    
    
            $this->load->model("default_model");
    
            $admins = $this->session->userdata("admins");
            if (!$admins){
                redirect(base_url("login"));
            }
        }
    
        public function index()
        {
            $viewData  = new stdClass();
            $admin    = $this->default_model->get("admin",array("id"=>1));
            $viewData->admin                = $admin;
            $viewData->url                  = "home";
            $this->load->view('home',$viewData);
        }
    }

     if (!$this->session->has_userdata("admins")){
     redirect(base_url("login"));
    }
    Bu şekilde constructor içerisinde kullanabilirsiniz. Core'a eklerseniz tek tek controller'lara eklemenize gerek kalmaz, core'dan extend edilen her controller'da çalışır. Session ayarlarını da kontrol edin, orada hata varsa yine çalışmaz.