- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHP(HTML、JavaScriptも?))
PHPでセッション変数を破棄する方法について
このQ&Aのポイント
- PHP内でechoを使って表示された後、クリアボタンを押すことで$player1num[0~15]を破棄する方法について教えてください。
- JavaScript内で$player1num=array();として、onClickでそれを呼んで破棄しようとしたがうまくいかなかったので、正しい方法を教えてください。
- セッションの使い方を理解していない初心者ですが、PHPでセッション変数を破棄する方法についての解説をお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- hogehoge78
- ベストアンサー率80% (433/539)
回答No.4
noname#244856
回答No.3
- muuming2001
- ベストアンサー率23% (202/847)
回答No.1
補足
回答ありがとうございます。 この回答を参考に変えてみました。 私は今プレイヤー2人で対戦する数当てゲーム(ここでは、トップ画面にてプレイヤー2人の名前とそれぞれの秘密の数字を設定し、プレイ画面でもそれらを表示し続ける。下にある$player1numはプレイ画面でのプレイヤー1の入力値を格納する変数で、0~14の配列を使っています)を作っているのですが、プログラムの最後の方で <input type="submit" name="clear" value="クリア"> if(isset($_POST['clear'])){ $player1num=array(); } としてみたのですが、何も反応しませんでした。 そこで試しに$player1num=array(); を $_SESSION=array();に変えてみると、 クリアボタンを2回連続押すことで両プレイヤー名・秘密の数字・プレイ画面での入力値が消えました。 さらに$player1num=array(); を session_destroy();に変えてみると、 当然ですが、クリアボタンを1回押すと上の3種類のセッションが消えました。 私はプレイ画面での入力値だけを消したいのですがどうも上手くいきません。 $_SESSION=array();では、3種類のセッションが消えてしまうのは分かりますが、 2回連続押さないと消えないのはよく分かりません。 度々すみませんが、もう一度これについて回答頂けないでしょうか?