Postingan lainnya
login gagal,password verify(SOLVED)
halo guys, jadi ceritanya ane lg ngikutin video tutorial sekolahkoding sistem login oop PHP, nah pas udah masuk bagian sistem login gagal mulu, selalu dilempar ke "Login failed" di if else nya.... dari yg ane liat, ini udh bisa lewat validasi, kayanya gagal pas mau set Session atau verify password
ini form login nya
<?php
require_once "core/init.php";
$errors = array();
if( Input::get('submit')){
//1. call object
$validation = new Validation();
//2. check method
$validation = $validation->check(array(
'username' => array( 'required' => true),
'password' => array( 'required' => true)
));
//3. passed Validation
if($validation->passed() ){
if($admin->login_admin( Input::get('username'),Input::get('password') ) )
{
Session::set('username', Input::get('username'));
header('Location: adminindex.php');
}else{
$errors[] = "login failed";
}
}else {
$errors = $validation->errors();
}
}
require_once "templates/header.php";
?>
<form class="" action="login2.php" method="post">
<label>ID Admin</label>
<input type="text" name="username">
<label>Password</label>
<input type="password" name="password">
<?php if(!empty($errors)){ ?>
<div id="errors">
<?php foreach ($errors as $error) { ?>
<li><?php echo $error; ?></li>
<?php } ?>
</div>
<?php } ?>
<input type="submit" name="submit" value="Log In">
</form>
<?php
require_once "templates/footer.php";
?>
ini function2 nya
public function login_admin($username, $password){
$data = $this->_db->get_info('admin', 'username', $username);
// print_r($data);
// die();
if( password_verify($password, $data['password']) )
return true;
else return false;
}
public function get_info($table, $column, $value){
if(!is_int($value))
$value = "'" .$value. "'";
$query = "SELECT * FROM $table WHERE $column = $value";
$result = $this->conn->query($query);
while($row = $result->fetch_assoc()){
return $row;
}
}
kalo di print_r terus die, udh berhasil ngambil datanya naah,kan code nya mirip2 halaman register tuh, ko tapi yg register berhasil ya, bisa ke set Session nya terus nge redirect ke halaman adminindex.
<?php
require_once "core/init.php";
$errors = array();
if( Input::get('submit')){
//1. memanggil objek validasi
$validation = new Validation();
//2. metode check
$validation = $validation->check(array(
'username' => array(
'required' => true,
'minimal' => 5,
'maximal' => 20,
),
'password' => array(
'required' => true,
'minimal' => 5,
),
'division' => array(
'required' => true,
)
));
//3. passed Validation
if($validation->passed() ){
$admin->register_admin(array(
'username' => Input::get('username'),
'password' => password_hash(Input::get('password'), PASSWORD_DEFAULT),
'division' => Input::get('div')
));
Session::set('username', Input::get('username'));
header('Location: adminindex.php');
}else {
$errors = $validation->errors();
}
}
require_once "templates/header.php";
?>
<form class="" action="registeradmin.php" method="post">
<label>ID Admin</label>
<input type="text" name="username">
<label>Password</label>
<input type="password" name="password">
<label>division</label>
<input type="text" name="div">
<?php if(!empty($errors)){ ?>
<div id="errors">
<?php foreach ($errors as $error) { ?>
<li><?php echo $error; ?></li>
<?php } ?>
</div>
<?php } ?>
<input type="submit" name="submit" value="add Admin">
</form>
<?php
require_once "templates/footer.php";
?>
tolong pencerahan nya agan2 sekalaian
1 Jawaban:
problem solved
di database ane limit password jadi varchar 40, sedangkan hasil password hash lebih dari 40 karakter