Jquery else tidak berfungsi


Status
Not open for further replies.

WidigdoNetwork

Apprentice 1.0
Halo om2 semua :D,
saya mau nanya nih ...
kenapa ya fungsi else di jquery berikut ini tidak berfungsi??
padahal sudah saya input asal2an username & password tapi tetap ke yang success ...
padahal sebelumnya bisa (ntah saya apain) Jadi ga bisa :'(

Berikut Jquerynya:
Code:
<script>
$(document).ready(function()
{

$('‪#‎signin‬').click(function()
{
var username=$("‪#‎username‬").val();
var password=$("‪#‎password‬").val();
var dataString = 'username='+username+'&password='+password;
if($.trim(username).length>0 && $.trim(password).length>0)
{
$.ajax({
type: "POST",
url: "proc.php?act=signin",
data: dataString,
cache: false,
beforeSend: function(){
$("‪#‎login‬").fadeOut('fast', function(){
$('‪#‎spinner‬').removeClass('hidden')
});
},
success: function(data){
if(data)
{
window.location.href = "index.php";
}
else
{
$('#spinner').addClass('hidden');
$("#login").fadeIn('fast', function(){
sweetAlert("Oops...", "Please enter valid username and password!", "error")
});
}
}
});

}
return false;
});

});
</script>

Dan, Isi pada proc.php?act=signin
PHP:
<?php
if(isset($_POST['username']) && isset($_POST['password']))
{
// Validate Username
$username=mysqli_real_escape_string($conn, $_POST['username']);
// Validate Password
$password=hash($enc_type, $enc_hash . mysqli_real_escape_string($conn, $_POST['password']) . $enc_hash);

$result=mysqli_query($conn, "SELECT * FROM dxb_users WHERE username='$username' and password='$password'");
$count=mysqli_num_rows($result);
$row=mysqli_fetch_array($result,MYSQLI_ASSOC);

// If Username & Password Matched
if($count==1)
{
$_SESSION['my_username']=$row['username'];
}

}
?>
 

el_makong

Hosting Guru
kalo saya sih kurang paham masalah jquerynya....tapi kalo php, masih nyangkut sedikit yg pake mysqli...biasa saya pake PDO...
biasanya, saya pasang dulu itu $count = 0; sebelum validasi username. juga $result=null;
dan di bagian IF,
PHP:
if ( (isset($_POST['username'])) && (isset($_POST['password'])) ){
}
kemudian, query databasenya jadi
PHP:
$query = "SELECT * FROM dxb_users WHERE username='$username' AND password='$password' LIMIT 1";
baru yg if username & pass match jadi tinggal cek, kalo null, brarti failed.kalo ada hasilnya(alias != null), udh pasti ada 1 row.

kalo saya tebak, itu si post query jadi proc.php?act=signinusername=username&password=password
kehilangan 1 buah ' & '

cmiiw
 
Last edited:

indra

Apprentice 2.0
pusing liat code tanpa indent. haha

Code:
success: function(data) {
                    if (data) {

itu nilainya akan selalu bernilai trus selama ada data yang di return oleh server.
kalau misalnya server nya ada return yang menandakan bahwa user / pass tidak cocok harusnya variable itu nya yang di cek. bukan hanya apakah ada return data dari server atau tidak.

sekedar pemahaman aja sih :)
 

WidigdoNetwork

Apprentice 1.0
kalo saya sih kurang paham masalah jquerynya....tapi kalo php, masih nyangkut sedikit yg pake mysqli...biasa saya pake PDO...
biasanya, saya pasang dulu itu $count = 0; sebelum validasi username. juga $result=null;
dan di bagian IF,
PHP:
if ( (isset($_POST['username'])) && (isset($_POST['password'])) ){
}
kemudian, query databasenya jadi
PHP:
$query = "SELECT * FROM dxb_users WHERE username='$username' AND password='$password' LIMIT 1";
baru yg if username & pass match jadi tinggal cek, kalo null, brarti failed.kalo ada hasilnya(alias != null), udh pasti ada 1 row.

kalo saya tebak, itu si post query jadi proc.php?act=signinusername=username&password=password
kehilangan 1 buah ' & '

cmiiw
Terima kasih mas atas respondnya :D,
Sudah bisa mas ternyata harus diubah yang bagian if(data) di jquery nya dan diubah jadi if(data == 1) dan di php ditambah echo 1;
pusing liat code tanpa indent. haha

Code:
success: function(data) {
                    if (data) {

itu nilainya akan selalu bernilai trus selama ada data yang di return oleh server.
kalau misalnya server nya ada return yang menandakan bahwa user / pass tidak cocok harusnya variable itu nya yang di cek. bukan hanya apakah ada return data dari server atau tidak.

sekedar pemahaman aja sih :)
Terima kasih mas atas respondnya :D,
Sudah bisa mas ternyata harus diubah yang bagian if(data) di jquery nya dan diubah jadi if(data == 1) dan di php ditambah echo 1;
 
Status
Not open for further replies.

Top