[SOLVED]login selalu gagal

ini masalahnya pas saya login dengan username sesuai yang ada di database selalu tidak bisa dan mysqli_num_rows nya selalu 0 mohon bantuannya ?

   <script type="text/javascript">
      $(document).ready(function(){
        $('.alert').hide();
        $('.btn').click(function(){
          var data = $('.login-form').serialize();
          $('.alert').hide();
          if ($('input[name=username]').val()=="") {
            swal(
              'Username',
              'Masih Kosong',
              'error'
            )
          }else if ($('input[name=password]').val()=="") {
            swal(
              'Password',
              'Masih Kosong',
              'error'
            )
          }else {
            $.ajax({
              type : "POST",
              url  : "function/login.php",
              data : data,
              success : function(data){
                if(data == "ok")window.location = "pro_pelapak.php";
                 else $('.alert').fadeIn().html(data);
              }
            });
          }
          return false;
        });
     })
    </script>

script login.php

 <?php
 session_start();
 require_once '../function/koneksi.php';
 require_once '../function/function.php';
 $username = isset($_POST['username']) ? escape($_POST['username']):'';
 $password = isset($_POST['password']) ? escape($_POST['password']):'';
 if (cek_username($username) !== 0) {
   if (cek_password($password, $username)) {
     //$data = mysqli_fetch_array(mysqli_query($koneksi, "SELECT * FROM pelapak WHERE username='$username'"));
     $_SESSION['username'] = $username;
     $_SESSION['timeout'] = time()+3600;
     $_SESSION['login'] = 1;
     echo "ok";
   }else {
     echo "<b>Password Salah</b>";
   }
 }else {
   echo "<b>Username Salah</b>";
   echo cek_username($username);
 }
 ?>
function cek_username($username){
   global $koneksi;
   if ($result = mysqli_query($koneksi, "SELECT * FROM pelapak WHERE username='$username'")) {
     return mysqli_num_rows($result);
   }
 }
avatar satriodwi
@satriodwi

43 Kontribusi 1 Poin

Diperbarui 6 tahun yang lalu

3 Jawaban:

Jika saya menghadapi situasi seperti ini biasanya,

1. Cek $username (pasang echo $username)

 ...
global $koneksi;
echo $username;
...

2. cek lagi querynya di MYSQL (bisa diuji langsung di phpmyadmin)

avatar unknown2414
@unknown2414

15 Kontribusi 6 Poin

Dipost 6 tahun yang lalu

coba fungsi cek_username diganti

 function cek_username($username){
   global $koneksi;
   $result = mysqli_query( $koneksi, "SELECT * FROM pelapak WHERE username='$username'" );
   return $result?mysqli_num_rows( $result ):false;
 }

maap kalo nggak work biasanya pake PDO

avatar zeeb
@zeeb

60 Kontribusi 19 Poin

Dipost 6 tahun yang lalu

udah solved yang tadinya var data = $('.login-form').serialize(); diganti dengan var username = $('#username').val(); var password = $('#password').val();

avatar satriodwi
@satriodwi

43 Kontribusi 1 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban