0

私がやろうとしているのは、CodeIgniter を 2 秒ごとにチェックして、セッションがまだ生きているかどうかを確認することです。しかし、何らかの理由で次のコードを使用すると、このエラーが発生します。

"Uncaught SyntaxError: 予期しないトークン ;"

なぜこれが起こっているのかについてのアイデアはありますか?

Javascript:

    setInterval(function() {
        $.getJSON("<?=base_url()?>index.php/regUserDash/sessionExpire"), function(data) {
            var sessionState = jQuery.parseJSON('{"sessionExpired":"true","sessionExpired":"false"}');
            if(sessionState.sessionExpired === "true") {
                alert('expired');
            } else if(sessionState.sessionExpired == "false") {
                alert('not expired');
            }
        });
}, 2000);

Ciコード:

public function sessionExpire() {
    if ($this->session->userdata("logged") == "1") {
        echo json_encode(array("sessionExpired" => false));
    } elseif($this->session->userdata("logged") == "0") {
        echo json_encode(array("sessionExpire" => true));
    }
}
4

1 に答える 1

3

ここに余分な括弧がありました:

$.getJSON("<?=base_url()?>index.php/regUserDash/sessionExpire") // <--

これはうまくいくはずです:

setInterval(function() {
    $.getJSON("<?=base_url()?>index.php/regUserDash/sessionExpire", function(data) {
        var sessionState = $.parseJSON('{"sessionExpired":"true","sessionExpired":"false"}');
        if (sessionState.sessionExpired === "true") {
            alert('expired');
        } else if (sessionState.sessionExpired == "false") {
            alert('not expired');
        }
    });
}, 2000);​
于 2012-04-12T22:35:36.123 に答える