2

ちょっと初心者の質問ですが、ボードの状態と他のゲーム状態情報がphpセッション変数として保存されるボードゲームを書いています。ボードは html/jquery でレンダリングされます。毎ターン ajax 呼び出しが php に対して行われ、ロジックを実行してボードの状態を変更します。しかし、ajax を呼び出すたびに、新しい php セッションが開かれ、古いセッションは忘れられているように見えます。コードは次のとおりです。

'index.php'
        $.ajax({
        type: 'POST',
        url: 'cycle.php',
        data: {},
        dataType: 'json',       
        success: function(data, status, jqXHR) {    
            var stuff = jQuery.parseJSON(jqXHR.responseText);
            $("#board").html(stuff.html);       
        },
    }); 


'cycle.php'
        <?php 
session_start();
include('functions.php');
header('Content-type: application/json');

if (!isset($_session['turn'])) {

    $_session['turn'] = 1;
    $_session['population'] = "";
    $out = write_table();   
    $out['turn'] = $_session['turn'];
    $out = json_encode($out);
    echo $out;
}
else {
    $_session['turn'] = 2;
    $out = turn($_session['population']);
    $out['turn'] = $_session['turn'];
    $out = json_encode($out);
    echo $out;
}




?>
4

2 に答える 2

5

$_SESSIONの代わりに試してください$_session。すべての PHP 変数名は大文字と小文字を区別します

于 2012-05-09T01:12:37.733 に答える
1

session_start()電話をしていない限り、電話をかけると自動的に行われるはずですsession_destroy()

これが発生するには、コード/セットアップでさらに深い何かが行われている必要があります。

おそらく、セッション関連の PHP INI 設定を確認してください。

于 2012-05-09T01:06:23.633 に答える