出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

セッションについて(セッションの初期化はどうやるの?)   YOUさん [2002/08/28 17:37:20] [2578]
  Re:セッションについて(セッションの初期化はどうやるの?)   北岳さん [2002/08/28 18:41:57] [2580]
    Re:セッションについて(セッションの初期化はどうやるの?)   YOUさん [2002/08/29 13:17:31] [2585]

[2578] セッションについて(セッションの初期化はどうやるの?)
投稿者:YOUさん 2002/08/28 17:37:20
@セッションの有効範囲(期限)を教えてください
----時間制限がまずデフォルトであると思いますが、その他にはブラウザをCLOSEするまで有効と考えてよいのでしょうか?

Aセッションの破棄について
----保存ボタンを設け、それを押下させて書き込みを行っています。
画面への入力ミスのことも考え、一旦保存ボタン押下後も繰り返し
セッションへ(上書き更新イメージで)書き込みたいのですが、
書き込み前にセッションの破棄(Session.Abandon)を行うと
後で内容が取得できません。
セッションの破棄とは初期化とは違うのですか?
現在は、保存と同じ処理で破棄しなければ良いようなので、
更にクリアボタンを設けています。
修正がある場合はクリアボタン押下で、セッションの破棄を行い、
全部まっさらにした後、入力し、再び保存ボタンで書き込んで
もらっています。

セッションの内容の初期化ってどうやるのですか?

[2580] Re:セッションについて(セッションの初期化はどうやるの?)
投稿者:北岳さん 2002/08/28 18:41:57
>@セッションの有効範囲(期限)を教えてください
>----時間制限がまずデフォルトであると思いますが、
 
デフォルトは20分ですが、(例えば、処理の最初の方の1.asp〜9.aspではなく)途中の10.aspに
session.timeout=600
と書いておくと、そこを通過したときからsessionは、
クライアントが接続を切ってもサーバのメモリに10時間は保持されます。
なお10.asp実行後、590分後に11.aspを実行すると、11.aspから600分(10.aspからは1190分・・・って、いったい何時間じゃ?)に変わります。
10.asp実行後、610分後に11.aspを実行すると、タイムアウトしているので、処理はパ〜になります。
 
次回に1.aspから入り直すと、初期状態(普通はデフォルトの20分)から再スタートします。
 
-------------
>その他にはブラウザをCLOSEするまで有効と考えてよいのでしょうか?
 
クライアントがブラウザを切ろうが、他のサイトに飛んで行こうが、サーバーは一切感知も関知もしません。
ブラウザを切られてもサーバはaspを送り出します。これらは、回線にゴミになって残る筈です。
 
-------------
>修正がある場合はクリアボタン押下で、セッションの破棄を行い、
>全部まっさらにした後、入力し、再び保存ボタンで書き込んでもらっています。
 
普通の変数x、y、zの中のzのみを更新したい場合、zだけに新しい値を入れて、ほかは放っておきますね。
(zを変えるときに一々xやyまで初期化はしないし、
xも、わざわざ一旦0を入れてから改めて新しい値を代入はしないでしょう。)
 
修正がある部分だけ、session("ses_name")="新しい値" を入れて上書きするように、スクリプトを見直すだけで済むはずですが。。。

[2585] Re:セッションについて(セッションの初期化はどうやるの?)
投稿者:YOUさん 2002/08/29 13:17:31
北岳さん、ありがとうございます。
今まであやふやだったものが少し理解できました!

ところで、前回は説明が足りませんでしたが、初期化に関しては、次のようにしたいのです。
例えば、A,B,Cという3つのチェックボックスがあり、
チェックを付けられたもののみセッションに書き込む。
(Bだけに付けられた場合、セッションにはBのみ書き込む)
最初にA、B、Cにチェックが付けられて、A、B、Cとも書き込み、
次にBだけに変更され、再度書き込む際に、A、Cが残ってしまっていますよね。
これをなくしたいのです。

というわけで、初期化のようなものが有れば・・・と思った次第です。
毎回書き込む項目数が同じであれば、北岳さんのおっしゃる通り、
上書きしていけば良いのかな?と思いますが、今回のような場合、
何か、良い方法がありますでしょうか?



TreeBBS For ASP V.0.1.3
Program By YasNet