Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

session admin kontrolü nasıl yapılır ?

Konu, 'PHP' kısmında netmaster tarafından paylaşıldı.

Etiketler:
  1. netmaster

    netmaster Üye

    Kayıt:
    19 Kasım 2007
    Mesajlar:
    249
    Beğenilen Mesajlar:
    0
    arkadaşlar session ile admin kontrolü yapmak istiyorum,
    üyeler için
    şu şekilde kontrol ediyorum tabi bu genel kontrol yapıyor yani üyeler admin syfasınada girebiliyor.
    PHP:
    <?php
    ob_start
    ();
    session_start();
    require_once 
    'dbconnect.php';

    if(!isset(
    $_SESSION['username']) || empty($_SESSION['username'])){
      
    header("location: login.php");
      exit;
    }
    ?>
    Fakat admin sayfası için nasıl kontrol edeceğim fikir verirseniz memnun olurum
    admin veritababında status '1' olarak kayıtlı normal üyeler ise status '2' olarak kayıtlı.

    Tşk cevaplar için şimdiden
     
  2. deathisonitsway

    deathisonitsway x-coder

    Kayıt:
    7 Kasım 2007
    Mesajlar:
    6,145
    Beğenilen Mesajlar:
    6
    Meslek:
    php-coder
    Şehir:
    abroad
    nasıl login ediyorsun kullanıcıyı.
     
  3. netmaster

    netmaster Üye

    Kayıt:
    19 Kasım 2007
    Mesajlar:
    249
    Beğenilen Mesajlar:
    0
    Login ederken username ve type session atıyorum @deathisonitsway
    Şöyle denedim fakat hata verdi.
    Admin için
    PHP:
    if(!isset($_SESSION['username']['ifadmin']=='1'|| empty($_SESSION['username']['if admin']=='1')){
      
    header("location: login.php");exit;}
    Üyeler için

    PHP:
    if(!isset($_SESSION['username']['ifadmin'] == '2' || empty($_SESSION['username']['ifadmin'] == '2')){
      
    header("location: login.php");
      exit;
    }
    isset ve empty beraber varyasyon olarak kullanamazsın diyor, çözemedim.
     
  4. deathisonitsway

    deathisonitsway x-coder

    Kayıt:
    7 Kasım 2007
    Mesajlar:
    6,145
    Beğenilen Mesajlar:
    6
    Meslek:
    php-coder
    Şehir:
    abroad
    İlk tavsiyem adam gibi bir frameworke geç.2007 den beri yazıyorsun benimle aynı yaşıttasın bu forumda.
    Sorunun cevabına gelince ;

    !isset varsa empty e gerek yok aynı işi yapar. isset (değişkenin var olup olmadığını kontrol eder) kontrolü yaparak istediğin sayfayı kontrol altına alabilirsin.
    burada yalnış çalışan şey neyse onun uzerine git.debug yapmaya çalış.
     
  5. netmaster

    netmaster Üye

    Kayıt:
    19 Kasım 2007
    Mesajlar:
    249
    Beğenilen Mesajlar:
    0
    @deathisonitsway
    Soruyu anlamamışsın kardeşim,
    soru admin kontrolü nasıl yapabilirimdi empty varyasyonu kullanınca hata veriyor.
    bende vazgeçtim yalın halde kullanıyorum.

    PHP:
    if(!isset($_SESSION['username']) || $_SESSION['type']!=2){
              
    $_SESSION['message'] = "You dont have permissons to see this page!";
            
    header("location: error.php");
      exit;
    }
    framework gelince orda dur, laravel indirdim, codeign, indirdim hepsi pcde var ama bir türlü nasıl açılır nereye kodlar yazılır anlamadım gitti :)
    pc'deki wamp server htdocs klasörü içinde duruyorlar, birtürlü konsülü bulamadım :(
     
  6. Çarkçı

    Çarkçı Yeni Üye

    Kayıt:
    6 Nisan 2018
    Mesajlar:
    21
    Beğenilen Mesajlar:
    2
    Şehir:
    Mersin
    En basit haliyle; giriş yapıldıktan sonra kullanıcının rolü ile ilgili bilgileri "SESSION" değişkeni olarak atayabilirsiniz.

    Kod:
    // Giriş yapıldı kontrolünden sonra...
    $_SESSION["kullaniciAdi"] = "netmaster";
    // Veritabanına bağlanın ve bu kullanıcı adının status 1 olup olmadığına bakın. Eğer öyleyse...
    $_SESSION["kullaniciGrubu"] = "yonetici";
    // Eğer değilse...
    $_SESSION["kullaniciGrubu"] = "kullanici";
    
    print_r($_SESSION);
    
    Daha sonra atadığınız bu değişkeni kontrol amaçlı kullanabilirsiniz.

    Kod:
    // Giriş yapıldı kontrolünden sonra...
    if($_SESSION["kullaniciGrubu"] = "yonetici") { // Yönetici } else { // Kullanıcı }