0

ここでアヤックスとの最初の遠出。単一のチェックボックスの値をキャプチャしようとしています。チェックされている場合は、PHP $_SESSION 変数を true に設定します。

HTMLにはこれがあります。

 <input type="checkbox" name="agree" id="agree"/>
and the js is this....not sure what to put in the AJAX data params??
    $(document).ready(function() {
            $('#agree').click(function(){ 
                $.ajax({
                    url: 'agree.php',
                    type: 'GET',
                    data: { agreement:"checked" } //NOT Sure ABout this??
                });      
        })
    });

およびPHP、おそらく動作していないため、疑似コード..

if($_GET['agreement'] == 'checked') {
$_SESSION['hm-agreement'] = true;
     } else {
$_SESSION['hm-agreement'] = false;

}

4

2 に答える 2

0

AJAX 呼び出しは良いようです。PHP スクリプトにデバッグを追加し、Firebug やその他の開発ツールで確認する必要があるかもしれません。

スクリプトの先頭start_session()で PHP スクリプトを使用することを忘れないでください。この呼び出しを省略すると、セッション オブジェクトは存在しません。

于 2013-02-12T00:33:05.543 に答える
0

ボックスがチェックされているかどうかを確認する必要があります。php ファイルに何を送信しても、コードはセッション変数を true に設定します。

短縮形の get と ajax も使用、コードは少ない

HTML

<input type="checkbox" name="agree" id="agree"/>

JS

$(document).ready(function() {
    $('#agree').click(function(){ 
        $.get('agree.php','agreement=' + ( this.checked ? 1 : 0 ) });
    })
});

PHP

session_start();
if($_GET['agreement']) {
    $_SESSION['hm-agreement'] = true;
} else {
    $_SESSION['hm-agreement'] = false;
}
于 2013-02-12T00:41:05.840 に答える