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

Membuat System Login

Selamat Siang semuanya, mohon bantuan.. saya mengikuti kelas "MEMBUAT SYSTEM LOGIN DAN REGISTER DENGAN METODE OOP PHP" namun ada kesulitan saat membuat system login.

1. Pada halaman register saya membuat 4 Form yang wajib diisi oleh user yaitu ( Nama, Username, Email, dan Password ).. begitu juga dengan Databasenya. 2. Pada halaman login saya hanya ingin menggunakan 2data saja yaitu username dan password.

Berikut code yang saya gunakan untuk system login ini : Kode pada login.php


<?php

	require_once "core/init.php";
	$errors = array();
	if( Input::get('submit') ){


		$validation = new Validation();

		$validation = $validation->check(array(
		'username' => array( 'required' => true ),
		'password' => array( 'required' => true )
		));


		if ( $validation->passed() ){

			if( $user->login_user( Input::get('username'), Input::get('password') ) )
			{
				Session::set('username', Input::get('username'));
				header('location: profile.php');
			}


		}else{
			$errors = $validation->errors();
		}

	}

	require_once "templates/header.php";
?>


		<form  action="login.php" method="post">
		<h4><small>Pastikan Data Login anda Benar !</small></h4>
		<hr class="colorgraph">
		<div class="form-group"><input size="29" class="form-control" name="username" placeholder="Username" value="" type="text"></div>
		<div class="form-group"><input size="29" class="form-control" name="password" placeholder="Password" value="" type="password"></div>
		<?php if(!empty($errors)){ ?>
		<div id="errors">
			<?php foreach ($errors as $error){ ?>
			<li> <?php echo $error; ?> </li>
			<?php } ?>
		</div>
		<?php } ?>

<div class="form-group"><input type="submit" class="btn btn-success btn-block btn-lg" name="submit" value="Login Sekarang !"></div>
		</form>

Kode pada user.php

 	public function login_user($username , $password)
	{
		$data = $this->_db->get_info('users', 'username', $username);
		print_r($data);
		die();


		if(password_verify($password, $data['password']) )
			return true;
		else return false;
	}

Pada Database.php

 	public function get_info($table, $column, $value)
	{
		if( !is_int(value) )
			$value = "'". $value . "'";

		$query 	= "SELECT * FROM $table WHERE $column = $value";
		$result = $this->mysqli->query($query);

		while($row = $result->fetch_assoc()){
			return $row;
		}
	}

Kendalanya ketika saya login, print_r data berhasil ditampilkan di browser.. namun ketika kode print_r tersebut saya hapus dari user.php Login gagal dan tidak berhasil di redirect ke halaman profile.php

avatar Supriono
@Supriono

84 Kontribusi 16 Poin

Diperbarui 9 tahun yang lalu

8 Jawaban:

Tidakkah ada yang bersedia membantu -_-

avatar Supriono
@Supriono

84 Kontribusi 16 Poin

Dipost 9 tahun yang lalu

"Login gagal dan tidak berhasil di redirect ke halaman profile.php" gagalnya maksudnya apa? errornya apa?

avatar hilmanski
@hilmanski

2715 Kontribusi 2152 Poin

Dipost 9 tahun yang lalu

maaf mungkin di database dengan fild password di cek dulu varcharnya harus diatas 100 lebih lebih amannya dikasih 250 , dikarenakan karakter dari hash bisa banyak ,,,,

avatar wedev
@wedev

86 Kontribusi 23 Poin

Dipost 9 tahun yang lalu

Alhamdulillah ada mas @hilmanrdn nongol. Maksudnya ketika saya login dengan memasukan username dan password yang benar itu tidak bisa mas. Padahal querynya sudah berhasil dilakukan.. Kenapa Ya Mas..?

avatar Supriono
@Supriono

84 Kontribusi 16 Poin

Dipost 9 tahun yang lalu

Mas @ululajib Varcarnya sudah saya kasih 255 mas

avatar Supriono
@Supriono

84 Kontribusi 16 Poin

Dipost 9 tahun yang lalu

nama fild username sama password apakah sudah sama?

avatar wedev
@wedev

86 Kontribusi 23 Poin

Dipost 9 tahun yang lalu

Jawaban Terpilih

ini di password_verify $data['password'] hurup P nya kecil terus di print_r P nya besar ,, (harusnya sama coba di ganti dulu..)

 if(password_verify($password, $data['password']) )
avatar wedev
@wedev

86 Kontribusi 23 Poin

Dipost 9 tahun yang lalu

hooo iyaa iya.. hehe Alhamdulillah work mas. Terimakasih banyak.

avatar Supriono
@Supriono

84 Kontribusi 16 Poin

Dipost 9 tahun yang lalu

Login untuk ikut Jawaban