Perhatian
Pastikan pengaturan $saltkey
telah diubah dan bersifat unik antara 1 projek dengan projek lainnya.
Metode SENE_Controller::setKey
digunakan untuk menyimpan nilai didalam $_SESSION.
Metode biasanya ini digunakan untuk menyimpan data setelah proses login berhasil.
Metode ini membutuhkan satu parameter yaitu $values.
Berikut ini adalah penggunaan dasar dari metode setKey
SENE_Controller::setKey(mixed $values): object
Berikut ini adalah contoh penggunaannya untuk API dalam proses otentifikasi pengguna (login).
<?php
class Login extends SENE_Controller{
public function __construct(){
parent::__construct();
$this->setTheme('front');
$this->load('front/b_user_model','bum');
}
public function index(){
//check sudah login atau belum
$data = $this->getKey();
if(isset($data->user->id)){
//sudah login
$this->status = 303;
$this->message = 'Sudah login, silakan refresh halaman';
$this->__json_out($data);
die();
}
$this->status = 1709;
$this->message = 'Kombinasi email dan/atau password salah';
$username = $this->input->request('username');
$res = $this->bum->auth($username);
if (isset($res->id)) {
$password = $this->input->request('password');
if (!password_verify($password, $res->password)) {
$this->status = 1707;
$this->message = 'Kombinasi email dan/atau password salah';
$this->__json_out($data);
die();
}
$sess = new stdClass();
if (isset($dt['sess'])) $sess = $dt['sess'];
if (!is_object($sess)) $sess = new stdClass();
if (!isset($sess->user)) $sess->user = new stdClass();
$sess->user = $res;
$this->setKey($sess);
}
$this->__json_out($data);
}
}