-PR-
締切り
済み

条件で分岐させるJavaScriptか、CGIを教えてください。

  • 暇なときにでも
  • 質問No.3256
  • 閲覧数94
  • ありがとう数13
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 20% (2/10)

ホームページで、
1ページに3つの問題があり、それぞれに3つの選択肢がある条件文が3ページあります。
これを1ページごとに選択していくと1ページで3×3×3=27で3ページなので27××27×27=19683通りの場合がありますが、このそれぞれの場合ごとに異なるページへ飛ばしたいのです。これを実現するあるいはこれにちかいJavaScript、あるいはcgiあるいはプログラミングで、フリーなもの教えてください。よろしいくお願いいたします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全2件)

  • 回答No.2
レベル7

ベストアンサー率 71% (5/7)

それっぽいサーブレットを作ってみました。 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class jumppage extends HttpServlet { private String ITS(int n) { return(Integer.toString(n)) ...続きを読む
それっぽいサーブレットを作ってみました。

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class jumppage extends HttpServlet {

private String ITS(int n) { return(Integer.toString(n)); };
private PrintWriter PW;
private void PL(String s) { PW.println(s); };
private void HD(int a, String b) { PL("<input type='hidden' name='Pa" + ITS(a) + "' value='" + b + "'>"); };

public void doGet(HttpServletRequest req, HttpServletResponse res) {

String Pa2, Pa3, s;
int Sn, Pg, i, j;

try {

Pg = 0;
if ((req.getParameter("Pa1")) != null) Pg = 1;
if ((Pa2 = req.getParameter("Pa2")) != null) Pg = 2;
if ((Pa3 = req.getParameter("Pa3")) != null) Pg = 3;

Sn = 0;
for (i = 0; i < 3; i ++) {
Sn *= 3;
if ((s = req.getParameter("S" + ITS(i))) != null) Sn += Integer.parseInt(s);
};

if (Pg == 3) {
res.sendRedirect("http://okwave.jp/qa" + ITS(Integer.parseInt(Pa2) * 729 + Integer.parseInt(Pa3) * 27 + Sn + 10000) + ".html");
return;
};

res.setContentType("text/html");
PW = res.getWriter();

PL("<html>");
PL("<head></head>");
PL("<body>Page" + ITS(Pg + 1) + "<br>");
PL("<form action='http://localhost:8080/minnaservlet/3256'>");
HD(1, "0");
if (Pg == 1) HD(2, ITS(Sn));
else if (Pg == 2) { HD(2, Pa2); HD(3, ITS(Sn)); };
for (i = 0; i < 3; i ++) {
PL("<br>Select" + ITS(i));
for (j = 0; j < 3; j ++)
PL("<input type='radio' name='S" + ITS(i) + "' value='" + ITS(j) + "'>");
};
PL("<br><input type='submit' value='next'></form></body></html>");

} catch (Exception ex) { System.out.println(ex.toString()+ "::Get"); };

};

}
  • 回答No.1
レベル8

ベストアンサー率 3% (1/28)

一般的すぎて申し訳ないですが、こういう多数のデータを結び付けて処理するのは、 「データベース管理ソフト」にやらせるお仕事なのではないでしょうか。
一般的すぎて申し訳ないですが、こういう多数のデータを結び付けて処理するのは、
「データベース管理ソフト」にやらせるお仕事なのではないでしょうか。
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ