2012-04-08 11 views
-3

私はcodeigniterを調べて、ユーザーがドロップダウンメニューを変更したときにセッション変数の値をどのように変更できるかを調べようとしています。ドロップダウンセッション値を変更する

<select name="testselect"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
    <option value="5">5</option> 
</select> 

アイデア?

+0

値はあらかじめ選択されていますか? – Norse

+0

いいえ私はすでに値が選択されていますが、ユーザーがドロップダウンで別のオプションを選択した場合、セッションを再びグローバルに変更できるようにしたいと思います。 –

+0

あなたはもっと情報を与える必要があります。ユーザーがフォームを送信する前に行わなければならないドロップダウン値を変更した後、何かが発生している必要がありますか?その場合は、JavaScriptを使用してこれを取得する必要があります。 – stealthyninja

答えて

2

あなたはjQueryのであなたの質問にタグ付けされたので、あなたはこれまで、あなたのHTMLを変更するので、私は、あなたがどこかのページでそれを使用している想定しています:

<select name="testselect" id="testselect"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
    <option value="5">5</option> 
</select> 

とあなたの$(document).ready(..);コールにこれを追加そのようなドロップダウンへの変更を取得するには:

$(document).ready(function() { 
    $('#testselect').change(function() { 
     // POST the changed value to a method in a controller that can accept 
     // a parameter and that'll set the session variable for you 
     $.post("http://location/to/controller/method/", 
      { testselect: this.value }, 
      'html' 
     ); 
    }); 
}); 
0

ニュース値を送信するにはJavaScriptを使用する必要があります。また、その値を取得する関数がコントローラに必要です。しかし、セッションIDを変更できるかどうかはわかりません。私はそれが不可能だと確信していますが、確かに安全ではありません。

+0

セッションIDではなく、セッションキーの値である –

+0

セッションの値と他のものがキーです。セッションキーの値はどういう意味ですか?はっきりしてください。 –