scurity saat login dengan php

assalamualaikum... gan cara membuat keamanan saat login di web itu gmna ya, ada yang tau link tutorial nya?

contohnya : saat kita sudah login lalu di back itu harusnya gak bisa,dia harus keluar dulu..

avatar cahbond
@cahbond

33 Kontribusi 3 Poin

Diperbarui 5 tahun yang lalu

12 Jawaban:

semoga penjelasan sederhana ini bisa memberi gambaran.

kalau saya biasanya setelah login berhasil membuat session.

<pre>

$login_data = array( 'user_id' =&gt; // diambil user id dr DB 'login_status' =&gt; 1 ); $this-&gt;session-&gt;set_userdata($login_data);

redirect(base_url('tujuan'));

</pre>

nah ketika user akses Controller login maka di cek dulu login_statusnya. Jika true maka diredirect ke home/profil misalnya.

<pre>

if( !empty($_SESSION['login_status']) ) { if( $_SESSION['login_status'] == 1 ){ redirect(base_url('tujuan')); }else{ //kode hapus seluruh session } }

</pre>

avatar LukmanSanjaya
@LukmanSanjaya

17 Kontribusi 12 Poin

Dipost 5 tahun yang lalu

trimakasih mas lukmansanjaya.. tapi kurang tepat, maksud saya itu ketika sudah login redirect ke halaman dashboard, lalu di klik back ke halaman login lg itu tidak bisa dia harus logout dulu

avatar cahbond
@cahbond

33 Kontribusi 3 Poin

Dipost 5 tahun yang lalu

2 buah project punya saya yg pakai Codeigniter pekai kaya gitu pas diback tetep ngak bisa mas. Ketika klik back tetep redirect lagi sesuai redirect yang ada di kode ini

<pre> if( !empty($_SESSION['login_status']) ) { if( $_SESSION['login_status'] == 1 ){ redirect(base_url('tujuan')); }else{ //kode hapus seluruh session } } </pre>

Karena mungkin browser request lagi ke kontroler CI. Btw masnya pake browser apa?

avatar LukmanSanjaya
@LukmanSanjaya

17 Kontribusi 12 Poin

Dipost 5 tahun yang lalu

sek-sek, itu pas back harus logot ya. :D. hehehe. sory gan kurang kopi.wkwkwk

avatar LukmanSanjaya
@LukmanSanjaya

17 Kontribusi 12 Poin

Dipost 5 tahun yang lalu

saya pake mozila mas

avatar cahbond
@cahbond

33 Kontribusi 3 Poin

Dipost 5 tahun yang lalu

saya blm pernah bikin yang kaya gitu si mas, coba dalem kontrollernya bikin kaya gini

<pre> if( !empty($_SESSION['login_status']) ) { //kode hapus seluruh session } </pre>

avatar LukmanSanjaya
@LukmanSanjaya

17 Kontribusi 12 Poin

Dipost 5 tahun yang lalu

haha iya santai, jangan tinggalkan kopi wkwkw

avatar cahbond
@cahbond

33 Kontribusi 3 Poin

Dipost 5 tahun yang lalu

script saya sperti ini

<pre> public function getlogin() {

	$user =$this-&amp;gt;input-&amp;gt;post(&#039;username&#039;,true);
	$pass =$this-&amp;gt;input-&amp;gt;post(&#039;password&#039;,true);
	$cek  =$this-&amp;gt;model_login-&amp;gt;proseslogin($user,$pass);
	$hasil =count($cek);
	if($hasil &amp;gt; 0){
        $userlogin  = $this-&amp;gt;db-&amp;gt;get_where(&#039;profil&#039;,array(&#039;username&#039;=&amp;gt;$user,&#039;password&#039; =&amp;gt;$pass))-&amp;gt;row();
		if($userlogin-&amp;gt;level == &#039;admin&#039;){
			redirect(&#039;home/index&#039;);	
		}elseif($userlogin-&amp;gt;level == &#039;user&#039;){
			redirect(&#039;dashboard&#039;);
		
		}
	}else{
		$this-&amp;gt;session-&amp;gt;set_flashdata(&#039;error&#039;,&#039;Silahkan coba lagi user &amp; password salah&amp;lt;img src=&quot;../img/images.jpg&quot;&amp;gt; &#039;);
		redirect(&#039;login&#039;);
	}
} &lt;/pre&gt;

disini saya kasih hak akses juga

avatar cahbond
@cahbond

33 Kontribusi 3 Poin

Dipost 5 tahun yang lalu

btw itu bikin session login nya di model ya?. coba didalam public function getlogin() di baris pertama tambahin kode hapus session login jika ada.

avatar LukmanSanjaya
@LukmanSanjaya

17 Kontribusi 12 Poin

Dipost 5 tahun yang lalu

di model saya cuma buat manggil database mas

avatar cahbond
@cahbond

33 Kontribusi 3 Poin

Dipost 5 tahun yang lalu

terus bikin session pas login berhasil dimanaya mas?

avatar LukmanSanjaya
@LukmanSanjaya

17 Kontribusi 12 Poin

Dipost 5 tahun yang lalu

di controller script yg itu, jadi jika saya login dengan admin makan di redirect ke halaman home dan jika saya masuk dengan user maka di redirect kehalaman dashboard tatapi jika tidak ke2 nya maka akan muncul pringatan silahkan coba lagi seperti itu mas..

avatar cahbond
@cahbond

33 Kontribusi 3 Poin

Dipost 5 tahun yang lalu

Login untuk ikut Jawaban