Diskon 50% terbatas! Masukkan kupon "programmer2025" di kelas apa saja

Permasalahan Login

Saya mau bertanya, kenapa setiap login, user dengan user level 3 selalu menampilkan halaman user yang berlevel 2 . untuk user level 1 dan 2 sudah benar masuk kehalamannya masing" mohon bantuanya

Controller Login:


 function auth(){
        $username=htmlspecialchars($this->input->post('username',TRUE),ENT_QUOTES);
        $password=htmlspecialchars($this->input->post('password',TRUE),ENT_QUOTES);
        $foto=htmlspecialchars($this->input->post('password',TRUE),ENT_QUOTES);

        $cek_user=$this->login_model->auth_user($username,$password,$foto,$level);

        if($cek_user->num_rows() > 0){ //jika login sebagai dosen
        $data=$cek_user->row_array();
            $this->session->set_userdata('masuk',TRUE);

             if($data['level']=='1'){ //Akses admin
                $this->session->set_userdata('akses','1');
                $this->session->set_userdata('ses_id',$data['id']);
                $this->session->set_userdata('ses_nama',$data['nama']);
                $this->session->set_userdata('ses_foto',$data['foto']);
                redirect('page');

             }else{ //akses dosen

                $this->session->set_userdata('masuk',TRUE);
                $this->session->set_userdata('akses','2');
                $this->session->set_userdata('ses_id',$data['id']);
                $this->session->set_userdata('ses_nama',$data['nama']);
                $this->session->set_userdata('ses_foto',$data['foto']);
                redirect('page');}

             }else{
              $this->session->set_userdata('masuk',TRUE);
              if($data['level']=='3'){
                $this->session->set_userdata('akses','3');
                $this->session->set_userdata('ses_id',$data['id']);
                $this->session->set_userdata('ses_nama',$data['nama']);
                $this->session->set_userdata('ses_foto',$data['foto']);
                redirect('page');
              }
        else{  // jika username dan password tidak ditemukan atau salah
              $url=base_url();
              echo $this->session->set_flashdata('msg','Username Atau Password Salah');
              redirect($url);
              }
          }
      }

Controller Page :

   function index(){
    $this->load->view('v_dashboard');
  }

  function bplk(){
    // function ini hanya boleh diakses oleh bplk
    if($this->session->userdata('akses')=='1' ){

    $data['keluhan'] = $this->Keluhan->tampil_data()->result();
    $this->load->view('dasbord_bplk',$data);
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }

  }
  function edit(){
     if($this->session->userdata('akses')=='1' ){

    $this->load->view('edit_profile');
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }

  }
//Sekdos
  function sekdos_keluhan(){
    // function ini hanya boleh diakses oleh dosen
    if($this->session->userdata('akses')=='2'){
     $data['keluhan'] = $this->Keluhan->tampil_data()->result();
    $this->load->view('dasbord_sekdos_keluhan',$data);
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }
  }
  function sekdos_mahasiswa(){
    // function ini hanya boleh diakses oleh dosen
    if($this->session->userdata('akses')=='2'){
      $this->load->view('dasbord_sekdos_mahasiswa');
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }
  }
  function sekdos_walikelas(){
    // function ini hanya boleh diakses oleh dosen
    if($this->session->userdata('akses')=='2'){
      $this->load->view('dasbord_sekdos_walikelas');
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }
  }

//Dosen
  function dosen_keluhan(){
    // function ini hanya boleh diakses oleh dosen
    if($this->session->userdata('akses')=='3'){
      $this->load->view('dasbord_dosen_keluhan');
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }
  }
  function dosen_keluhan1(){//kehilangan dosen
    // function ini hanya boleh diakses oleh dosen
    if($this->session->userdata('akses')=='3'){
      $data['keluhan'] = $this->Keluhan->tampil_keluhan_dosen();
      $this->load->view('dasbord_dosen_keluhan1',$data);
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }
  }

  function dosen_mahasiswa(){
    // function ini hanya boleh diakses oleh dosen
    if($this->session->userdata('akses')=='3'){
      $this->load->view('dasbord_dosen_mahasiswa');
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }
  }

   function dosen_walikelas(){
    // function ini hanya boleh diakses oleh dosen
    if($this->session->userdata('akses')=='3'){
      $this->load->view('dasbord_dosen_walikelas');
    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }
  }
   function dosen_kegiatandosen(){
    // function ini hanya boleh diakses oleh dosen
    if($this->session->userdata('akses')=='3'){
      $data['kegiatan_dosen'] = $this->Keluhan->tampil_kegiatan();
      $this->load->view('dasbord_dosen_kegiatandosen',$data);

    }else{
      echo "Anda tidak berhak mengakses halaman ini";
    }
  }
avatar ilhamhidayat
@ilhamhidayat

15 Kontribusi 0 Poin

Diperbarui 8 tahun yang lalu

2 Jawaban:

karena pada pengkondisan nya salah disana ditulis if($data['level']=='1) namun setelahnya diikuti else bukan else if yang dimana jika ada kondisi harusnya menggunakan else if

jadinya seperti ini

<pre> function auth(){ $username=htmlspecialchars($this-&gt;input-&gt;post('username',TRUE),ENT_QUOTES); $password=htmlspecialchars($this-&gt;input-&gt;post('password',TRUE),ENT_QUOTES); $foto=htmlspecialchars($this-&gt;input-&gt;post('password',TRUE),ENT_QUOTES);

    $cek_user=$this-&amp;gt;login_model-&amp;gt;auth_user($username,$password,$foto,$level);

    if($cek_user-&amp;gt;num_rows() &amp;gt; 0){ //jika login sebagai dosen
    $data=$cek_user-&amp;gt;row_array();
        $this-&amp;gt;session-&amp;gt;set_userdata(&#039;masuk&#039;,TRUE);
        
         if($data[&#039;level&#039;]==&#039;1&#039;){ //Akses admin
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;akses&#039;,&#039;1&#039;);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_id&#039;,$data[&#039;id&#039;]);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_nama&#039;,$data[&#039;nama&#039;]);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_foto&#039;,$data[&#039;foto&#039;]);
            redirect(&#039;page&#039;);

         }else if($data[&#039;level&#039;]==&#039;2&#039;){ //akses dosen
            
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;masuk&#039;,TRUE);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;akses&#039;,&#039;2&#039;);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_id&#039;,$data[&#039;id&#039;]);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_nama&#039;,$data[&#039;nama&#039;]);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_foto&#039;,$data[&#039;foto&#039;]);
            redirect(&#039;page&#039;);}

         }else if($data[&#039;level&#039;]==&#039;3&#039;){
          $this-&amp;gt;session-&amp;gt;set_userdata(&#039;masuk&#039;,TRUE);
         
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;akses&#039;,&#039;3&#039;);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_id&#039;,$data[&#039;id&#039;]);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_nama&#039;,$data[&#039;nama&#039;]);
            $this-&amp;gt;session-&amp;gt;set_userdata(&#039;ses_foto&#039;,$data[&#039;foto&#039;]);
            redirect(&#039;page&#039;); 
          
    else{  // jika username dan password tidak ditemukan atau salah
          $url=base_url();
          echo $this-&amp;gt;session-&amp;gt;set_flashdata(&#039;msg&#039;,&#039;Username Atau Password Salah&#039;);
          redirect($url);
          }  
      }
  }

</pre>

avatar codingforbabies
@codingforbabies

159 Kontribusi 53 Poin

Dipost 8 tahun yang lalu

betul gan, apabila agan buka <pre> if </pre>, brarti <pre> else </pre> itu ada dipaling bawah.. dan di antara <pre> if </pre> dan <pre> else </pre> , semuanya ditulis <pre> else if </pre>

avatar uzzielpelawak
@uzzielpelawak

72 Kontribusi 21 Poin

Dipost 8 tahun yang lalu

Login untuk ikut Jawaban