如何通过AJAX,PHP传递checbox值?

时间:2016-11-13 18:43:39

标签: javascript php jquery ajax

我有一个简单的登录表单与checbox记住我。我想要实现的是当用户检查checbox而不是创建cookie其他启动会话但它仍然启动会话,即使我选中了复选框。有人可以帮忙吗?

这是我的HTML:

<form action="PHP/login.php" method="post" class="loginForm">

                <div class="form_vkope">
                    <input type="text" name="prihlNick" placeholder="Nick" class="prihlNick" />
                    <img src="Obrazky/ios7-person.png" alt="Ikonka postavy">                    
                </div>

                <div class="form_vkope">
                    <input type="password" name="prihlHeslo" placeholder="Heslo" class="prihlHeslo" />
                    <img src="Obrazky/locked.png" alt="Ikonka zámok">                   
                </div>


                <div class="obal_submitov">
                    <input type="checkbox" name="zapametat" class="zamapetat" /><label for="zapametat"><span></span>Remember me</label>
                    <input type="submit" name="prihlasit" value="Login" class="prihlasit" />                    
                </div>
            </form>

我的PHP的一部分:

$zapametat = $_POST['zapametat']; //checkbox
 if ($dbNick == $Snick AND $dbHeslo == $Sheslo) {
        if ($ban != 1) {
            if (isset($zapametat)) {
                setcookie('id',$dbId,time()+86400, '/');
                setcookie('nick',$dbNick,time()+86400, '/');
                echo "cookie";
            }else{
                $_SESSION['id'] = $dbId;
                $_SESSION['nick'] = $dbNick;
                echo "session";
            }
        }else{
            echo "Tvoj účet bol zablokovaný";
        }
    }else{
        echo "Heslo alebo meno sa nezhoduje";
    }
}

我的jQuery:

$('.prihlasit').click(function() {
    var prihlNick = $('.prihlNick').val();
    var prihlHeslo = $('.prihlHeslo').val();
    var prihlasit = $('.loginForm .prihlasit');
    var checbox = $('.zapametat'); //checkbox
    var data = 'prihlNick='+prihlNick+'&prihlHeslo='+prihlHeslo+'&zapametat='+checbox+'&prihlasit='+prihlasit;
    if (prihlNick == '' || prihlHeslo == '') {
        $('.loginForm :input').addClass('inputError');
    }else{
        $('.loginForm :input').removeClass('inputError');
        $.ajax({
            url: 'PHP/login.php',
            type: 'POST',
            data: data ,
        })
        .done(function(data) {
            $('.vypis_chyba').html(data);
            console.log(data);
        })
    }
});

1 个答案:

答案 0 :(得分:1)

我建议使用这个:

<强>的jQuery

var checbox = $('.zapametat').prop('checked'); //checkbox (jQuery 1.6+)

<强> PHP

if((isset($zapametat))&&($zapametat==true)){