セッション変数 Session("USERNAME") で名前の管理

三流君(TOP) /ASPで遊ぶ /記事一覧

じゃんけんゲーム



あなたのお名前は?



アナタのIP Address=38.103.63.17
Session.SessionID=804166577
サーバー再起動時に同じセッションIDが振られることがあるが、
通常は毎回違う値が表示される
ブラウザを閉じてからまた開いたり
隣のインターネット上同じIPの端末から2つ同時に開いたり してテストしてみよう


コーヒーブレイク たまには寄り道、休憩も(↓広告です):
広告:[Blogで商品紹介] ← 足跡から人気を判断?
[本日発売の商品] ← 発売日が当日の商品を紹介、、、するが効果が無いので → [来週7日後] ← を作成して、検索の席取りで予約を狙ってます(テスト・試行錯誤中)

ASPサンプルソース(プログラムのソースコード)

詳細解説は[http:/asp/backno/asp064.html]を見てください
下記、/cgi-bin/test/test064-1.aspのソース(中身)です

Session を 使った ソースコードを紹介する

表示色の説明:ASP VBScriptは <% 〜 %>
キーワードはSession です。 <%@LANGUAGE=VBScript%> <html> <head> <title>セッション変数 Session("USERNAME") で名前の管理</title> </head> <body> <h2>セッション変数 Session("USERNAME") で名前の管理</h2> <h3>じゃんけんゲーム</h3><br> <% 'ユーザー名が送られていたら、セッション変数にセットする D = Request.QueryString("UNAME") 'データを代入 If Len(D) <> 0 Then 'データあり Session("USERNAME") = D '名前の代入 End If 'パラメータをチェックする、セッション変数に名前が入っているか? USER_NAME = Session("USERNAME") 'Lenで変数の長さをチェックする If Len(Trim(USER_NAME)) = 0 Then '名前が未入力なら Call INPUT_NAME() '名前入力フォームの表示 Else D = Request.QueryString("DATA") 'データを代入(選択された手) If Len(D) = 1 Then 'データあり Call HANTEI(D) '判断用の関数を呼ぶ End If Call INPUT_FORM() '入力用のフォームを表示する、再度入力させる End If %> <hr> アナタのIP Address=<%=Request.ServerVariables("REMOTE_ADDR")%><br> Session.SessionID=<%=Session.SessionID%><br> サーバー再起動時に同じセッションIDが振られることがあるが、<br> 通常は毎回違う値が表示される<br> ブラウザを閉じてからまた開いたり<br> 隣のインターネット上同じIPの端末から2つ同時に開いたり してテストしてみよう<br><hr> </body> </html> <% '名前入力フォームの表示 Sub INPUT_NAME() Response.Write "<HR>" Response.Write "<FORM ACTION='test064-1.asp' METHOD='GET'>" Response.Write "あなたのお名前は?<br>" Response.Write "<INPUT TYPE='text' NAME='UNAME'><br>" Response.Write "<INPUT TYPE='submit' VALUE='名前の登録'><br>" Response.Write "</FORM>" End Sub %> <% '入力フォームの表示(勝負する手を入力) Sub INPUT_FORM() Response.Write "<HR>" Response.Write "<FORM ACTION='test064-1.asp' METHOD='GET'>" Response.Write "<b>" & USER_NAME & "</b>さん、あなたの手は?<br>" Response.Write "<INPUT TYPE='RADIO' NAME='DATA' VALUE='1'>1.グー<br>" Response.Write "<INPUT TYPE='RADIO' NAME='DATA' VALUE='2'>2.チョキ<br>" Response.Write "<INPUT TYPE='RADIO' NAME='DATA' VALUE='3'>3.パー<br>" Response.Write "<INPUT TYPE='submit' VALUE='勝負する'><br>" Response.Write "</FORM>" End Sub %> <% '乱数を発生させて勝負する Sub HANTEI(strNO) 'ユーザーの手を受取り判断する Dim nCON 'コンピュータの手1〜3の数値が入る Dim nPC 'ユーザーさんの手 Dim strTE(3) '(*1)配列変数を宣言 strTE(1) = "グー" '(*2)配列にメッセージを代入 strTE(2) = "チョキ" strTE(3) = "パー" '入力値の判断、エラーならメッセージを表示させ抜ける 'If文で1,2,3以外を判断する If strNO <> "1" And strNO <> "2" And strNO <> "3" Then Response.Write "[" & strNO & "]は不正な入力です" Exit Sub '<--Exit Subを使用してここでプログラムを抜ける End If 'コンピュータの手を決定 Randomize ' 乱数発生ルーチンを初期化します。 nCON = Int((3 * Rnd) + 1) '1 から 3 までの乱数を発生させます。 '結果判断と表示 'ユーザーの手を表示する nPC = CInt(strNO) 'CInt関数で数値型に変換する Response.Write USER_NAME & "さんの手は、" Response.Write strTE(nPC) & "です<br>" '(*3)ここでnPC番目を表示 '(*4)同様にコンピュータの手を表示する Response.Write "コンピュータの手は" & strTE(nCON) & "です<br>" '結果の判断 'まず、引き分けを判断 If nPC = nCON Then Response.Write "引き分けです<br>" '次に自分が勝ちの手を判断 グーvsチョキ,チョキvsパー,パーvsグー If nPC = 1 And nCON = 2 Then Response.Write "アナタの勝ちです<br>" If nPC = 2 And nCON = 3 Then Response.Write "アナタの勝ちです<br>" If nPC = 3 And nCON = 1 Then Response.Write "アナタの勝ちです<br>" 'コンピュータが勝ちか判断 グーvsパー,チョキvsグー,バーvsチョキ If nPC = 1 And nCON = 3 Then Response.Write "私(コンピュータ)の勝ちです<br>" If nPC = 2 And nCON = 1 Then Response.Write "私(コンピュータ)の勝ちです<br>" If nPC = 3 And nCON = 2 Then Response.Write "私(コンピュータ)の勝ちです<br>" End Sub %>

最近発売の雑誌を紹介する

スポーツ系の雑誌です。プログラマーさん運動不足になってませんか?
  1. BOWLING magazine (ボウリング・マガジン) 2008年 06月号
  2. IRONMAN (アイアンマン) 2008年 06月号
  3. Urawa Reds Magazine (浦和レッズマガジン) 2008年 06月号
  4. CALCiO (カルチョ) 2002 2008年 07月号
  5. WORLD SOCCER GRAPHIC (ワールドサッカーグラフィック) 2008年 06月号
  6. 月刊 GRUN (グラン) 2008年 06月号
  7. Regina (レジーナ) 初夏号 2008年5/27号
  8. 陸上競技マガジン 2008年 06月号
  9. 月刊 秘伝 2008年 06月号

SQL総合の書籍を紹介します

  1. [4774117552]- 改訂新版 SQLポケットリファレンス (Pocket reference)
  2. [4797335459]- プロとしてのOracle PL/SQL入門
  3. [4891005114]- ひと目でわかるMicrosoft SQL Server 2005 (マイクロソフト公式解説書)
  4. [4873112818]- 初めてのSQL
  5. [4781910246]- リレーショナルデータベース入門―データモデル・SQL・管理システム (Information&Computing)
  6. [4798014958]- PostgreSQL完全機能リファレンス―実行例を通して「理解」を深める。

評価や感想気軽に送っていただけると嬉しいです

HPを読んだ満足度(評価)は?
5満足(参考になった)
4まぁまぁ(一部参考になった)
3普通(どちらとも言えない)
2なんかなぁ(期待と違った)
1不満(読んで損した気分)
作者に感想・質問を送る(気軽に質問・感想書いてください)
あなたのお名前(ニックネーム) さん

作者からの返信は、 不用 E-mail で受信したい
*質問・感想はメルマガで紹介する場合があります
※Ken3への連絡先 → [http://ken3-info.blog.ocn.ne.jp/day/2007/06/ken3_b6ba.html] 気軽に問い合わせてください

Googleで関連項目を検索する

LANGUAGE=VBScript + [キーワード:Session] Sub|Function プログラム|プログラミング
↓で検索するとプログラムの例 Sub/Function でまとまったHP

Google

あれ?私のページが検索に載ってない(笑)一度お試しを(私のページに、また戻ってきてね(爆))

三流解説とリンクページを紹介

ASP系の解説を項目ごとにまとめてみました

[ASP Form等を使用したデータのやり取り]
[ASP その他処理サンプル]
[ASP テキストファイル処理]
[ASP VBScript関数関係の説明]
[ASP ADOでMdbファイルを使う]
[ASP ADOでExcelと接続してみた]

その他:blogや広告↓
[日記的なblog]← あまり更新してないけど・・・
[三流なプログラムコード]← 恥ずかしいのであまり載せてないけど・・・
[通販商品の足跡を紹介]←通販商品などを紹介してます



旅行ガイドブックを購入する

ハードなプロジェクトが完了したら、少しリフレッシュしてみては?
[旅行情報・ガイドブックを探す]
最近聞かなくなったけど、システムの打ち合わせを合宿でやる・・・とか
※実際は旅館で一杯、親睦会って感じだけど。
現在時刻は、2008/05/17 12:37:16です。
[Topへ戻る] −−>[ASP系へ戻る] −−>[バックナンバーを見る]