Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
Login Oracle di php
mau tanya kenapa saya selalu error login padahal saya sudah masukin nama password dan login sebagai apa ?
ini syntaxnya index.php
<?php
session_start();
if($_SESSION){
header("Location: user.php");
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Login</title>
<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="style.css"/>
</head>
<body>
<div class="container">
<div class="row">
<h2>Log In</h2>
<div class="login">
<?php
if(isset($_POST['login'])){
include("koneksi.php");
$username = $_POST['username'];
$password = $_POST['password'];
$level = $_POST['level'];
$query = "SELECT * FROM DAT_LOGIN WHERE NM_LOGIN='$username' AND PASSWORD='$password'";
$stmt = oci_parse($link, $query);
if(oci_num_rows($stmt) == 0){
echo '<div class="alert alert-danger">Upss...!!! Login gagal.</div>';
}else{
$row = oci_fetch_assoc($stmt,OCI_RETURN_NULLS);
if($row['level'] == 1 && $level == 1){
$_SESSION['username']=$username;
$_SESSION['level']='admin';
header("Location: user.php");
}else if($row['level'] == 2 && $level == 2){
$_SESSION['username']=$username;
$_SESSION['level']='penilai';
header("Location: user.php");
}else if($row['level'] == 3 && $level == 3){
$_SESSION['username']=$username;
$_SESSION['level']='penagihan';
header("Location: user.php");
}else{
echo '<div class="alert alert-danger">Upss...!!! Login gagal.</div>';
}
}
}
?>
<form role="form" action="" method="post">
<div class="form-group">
<input type="text" name="username" class="form-control" placeholder="Username" required autofocus />
</div>
<div class="form-group">
<input type="password" name="password" class="form-control" placeholder="Password" required autofocus />
</div>
<div class="form-group">
<select name="level" class="form-control" required>
<option value="">Pilih Level User</option>
<option value="1">Administrator</option>
<option value="2">Penilai</option>
<option value="3">Penagihan</option>
</select>
</div>
<div class="form-group">
<input type="submit" name="login" class="btn btn-primary btn-block" value="Log me in" />
</div>
</form>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
ini syntax koneksi.php
<?php
$host="localhost";
$user="pbb";
$password=" ";
$port="1521";
$dbname="xe";
$link= oci_connect($user,$password,$host."/".$dbname) or die (ocierror());
?>
ini syntax style.css
<style>
body {
background-color:#eee;
}
.row {
margin:100px auto;
width:300px;
text-align:center;
}
.login {
background-color:#fff;
padding:20px;
margin-top:20px;
}
</style>
ini syntax user.php
<?php
session_start();
if(empty($_SESSION)){
header("Location: index.php");
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Login System</title>
<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="style.css"/>
</head>
<body>
<div class="container">
<div class="row">
<h2>Login Berhasil</h2>
<div class="login">
<p>Anda berhasil login dengan detail sebagai berikut:</p>
<p>Username: <?php echo $_SESSION['NM_LOGIN']; ?><br>
Level: <?php echo $_SESSION['level']; ?></p>
<p><a href="logout.php" class="btn btn-primary" onclick="return confirm('Yakin ingin Logout?')">Log out</a></p>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
3 Jawaban:
kemungkinan error itu ada banyak, coba dijelaskan errornya apa, ada pesan error yang muncul ? atau masuk ke salah satu bagian if else yang mana, jelaskan masalahnya lebih detial
pesan errornya Upss...!!! Login gagal itu aja tidak ada respon apa2
Jawaban Terpilih
sepertinya itu karena oci_num_rows. coba dijadiin variabel dulu $tes = oci_num_rows(stmt) habis itu di var_dump($tes) liat hasilnya.