• ベストアンサー

[ASP]URL付加情報を転用したい。

こんばんわ。 連続書き込みをお許しください。 Response.Redirect = "b.html" でBのページに移動できますよね? たとえばこのページが・・・ a.html?ID=12345&TYPE=abc&ZONE=C110 などのページだとします。 単純にBのページを表示したいのなら、さっきのようになコマンドでいいのですが、AのページのURLに付加されている情報をあわせてそのまま表示したい、つまり、 b.html?ID=12345&TYPE=abc&ZONE=C110 というばあい、何かいい方法はありませんか? ちなみに付加情報はPOST情報だったりします・・・。 宜しくお願いいたします。 JavaScriptで出来ると考え、 http://oshiete1.goo.ne.jp/kotaeru.php3?q=649582 に書き込んでみましたがCGIを提案されています。 JavaScriptで無理でCGIでとなれば、出来ればASPで書きたいのですが。。。 いい方法はないでしょうか? 宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • isobeman
  • ベストアンサー率41% (17/41)
回答No.4

Server.Transfer "b.html" もしくは、 Server.Execute "b.html" としてください。 この両者は、クエリ文字列やFORMも一緒に他のASPとかCGIへ転送します。 ただ、Server.Executeは戻ってきてしまいますが。。。

その他の回答 (3)

  • BlueRay
  • ベストアンサー率45% (204/453)
回答No.3

start.asp(最初のページ) ↓ a.asp(POSTでパラメータを受信) ↓ b.asp(a.aspと同一パラメータを受信) 上記の様に出来ればいいのでしょうか? 的外れならすいません。 上記のようにするサンプルです。 start.html '************************************************* <form name="test" action="a.asp" method="post"> <input type="text" name="t1" value=""> <input type="text" name="t2" value=""> <input type="text" name="t3" value=""> <input type="submit" name="submit" value="送信"> </form> '************************************************* a.asp '************************************************* <% response.write request.form %> <form name="test2" action="b.asp" method="post"> <% paramz = split(request.form, "&") for i = 0 to Ubound(paramz)   param = split(paramz(i), "=")   if Ucase(param(0)) <> "SUBMIT" then     response.write "<input type='hidden' name='" & param(0) & "' value='" & param(1) & "'>" & vbCrLf   end if next %> <input type="submit" name="submit" value="送信"> </form> '************************************************* b.asp '************************************************* <% response.write request.form %> '*************************************************

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.2

↓を使えば出来るでしょう。

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=633570
  • 11n_kacie
  • ベストアンサー率42% (21/50)
回答No.1

参考になるかどうかわかりませんが、普段私が使用している方法 をご紹介させていただきます。 ASPでしたら、Session変数を使用するというのは如何でしょう。 URLに表示されませんのでPOST情報のように使用できます。 ただ、POST情報と違って一度保持したら能動的に初期化や変更を 行わない限り、保持したままになってしまいます。 もう一つの方法として、JavaScriptを併用する方法があります。 フォームを含むHTMLコードを生成し、それをJavaScriptで自動 的にsubmitするようにすればいいと思います。 送信したい変数はhiddenで指定すればよいでしょう。 ただし通常のフォームで送信することになるので、それと同様の セキュリティ対策が必要となります。 RedirectでPOST情報を送信する方法、少なくとも私は知らないも ので、申し訳ありません。いかにもありそうな気はするのですが。 私自身も他の方のご返答を参考にさせていただきたいと考えており ます。

関連するQ&A

  • [JavaScript]URLの付加情報をそのまま転用したい!

    こんにちわ。 連続書き込みをお許しください。 location.href = "b.html"; でBのページに移動できますよね? たとえばこのページが・・・ a.html?ID=12345&TYPE=abc&ZONE=C110 などのページだとします。 BODYのonloadアクションで単純にBのページを表示したいのなら、さっきのように location.href = "b.html"; でいいのですが、AのページのURLに付加されている情報をあわせてそのまま表示したい、つまり、 b.html?ID=12345&TYPE=abc&ZONE=C110 というばあい、何かいい方法はありませんか? ちなみに付加情報はPOST情報だったりします・・・。 宜しくお願いいたします。

  • ASPからのEXEファイル起動

    VBScriptで作ったASPからVisualBasicで作ったEXEファイルを起動するプログラムを作りました。 そこでEXEファイルを起動する際にASPで持ってる情報(ユーザID)を 起動をかけるEXEに渡したいのですがうまくいきません。 DOS画面より >C:\abc.exe 10 とうつとパラメータ 10が引きわたり正常に起動します。 ところがWEBから Response.Redirect("C:\abc.exe 10")とやると ページが見つかりませんとなります。 ちなみに Response.Redirect("C:\abc.exe")だと パラメータの受け渡しはありませんが起動はできます。 何がいけないんでしょうか・・・? ご教授願います。

  • Webページで最新のJavaScriptを読み込みたい

    Webページで最新のJavaScriptを読み込みたい Visual Studio 2008 でWebページを作成しています。 今、AというページとBというページがあり、それぞれのページにボタンを設け、 Response.Redirectで行き来できるようにしています。 それぞれのページは、  B:現在の状況に応じてJavaScript内に配列を作成  A:Bで作成したJavaScriptを読み込み、ボタンのクリックで内容を表示 という機能を持たせています。 今、BでJavaScriptを作成し、Response.RedirectでAのページに行くと、前の (キャッシュされている?)内容が表示されます。 →ここで、ブラウザの「更新」ボタンをクリックすると、最新の内容になります。 切り替わったときに、最新の状態のJavaScriptを読ませようと、  A.aspx?data=xxxxx (xxxxxは乱数)としましたが、状況は同じでした。 Aのページで、いつでも最新のJavaScriptを読み込ませることはどうすればでき るのしょうか。

  • 文字・URLの切替えに関してです。

    Javascript で次のようにしました。 (参考図) 上フレーム(A.php)name="A" 中フレーム(B.php)name="B" 下フレーム(C.php)name="C" ※ 縦に3段組のレイアウト。 ▼ A.php <script language="JavaScript"> function abc(url){ parent.B.xxx.innerText=url; } </script> </head> <body> <a href="B.php" target="B" onClick="abc('B.php');">C.phpページのURLを切替える</a> </body> ▼ C.php <body> <td id="xxx">D.php</td> <ul> <li><a href="D.php" target="B">切り替えページ</a></li> </ul> </body> それで A.phpページのリンクをクリックすると・・・ C.phpページの td id="xxx" の D.php のところは、B.php と切替えることはできたのですが C.phpページの a href のところのURL(D.php)を B.php と切替えるには、どうしたら良いのでしょうか? ちなみに、C.phpページはリロードさせないので、PHPの $_SESSION 関数での対応は無理でした。 中途半端な知識で対応できず、苦しんでおります。 ちなみに、分かりやすく詳しく教えて頂けると非常に助かります。 もし宜しければ何方か、どうか教えて下さい。宜しくお願いします。

  • ASP.Net Session管理について

    ASP.Net 2.0 で開発をする初心者です。 Session管理について教えてください。 ログインページからいくつかのサブページに渡る際     Response.Redirect("~/A.aspx") それぞれのページでセッション設定しないといけないのでしょうか?     Session("Key") = Me.TextBox1.Text よろしくお願い致します。 Login.aspx --- Menu.aspx--|--- A.aspx                  |--- B.aspx                       |--- C.aspx                            |--- D.aspx                  |--- E.aspx

  • ASPのRedirectの処理ついて困っています

    フリーのCGIのソフトを使用しているのですが、このCGIを呼び出す前に決められた データーをこのCGI宛にPOSTしなくてはいけません。 ASPのRedirectコマンドを使用して、Redirect先のCGIに値をPOSTする、ということ はできるのでしょうか? ***.cgi?name=aaa&flag=bbb という形でRedirectしても、残念なことにCGIの方できちんと値を受け取ってくれ ませんでした。 下記のようなFormタグをRedirect処理で自動的に値を入れてPOSTしたいのですが。。。 <form id="FormName" action="***.cgi" method="post" name="FormName"> <input type="text" name="name" value="aaa" size="24"><br> <input type="text" name="flag" value="bbb" size="24"> </form>

  • VBAで情報を付加して特定のWebページを開く方法

    いつもお世話になっております。 ExcelVBAで、情報を付加したWebページを開こうとしていますが、うまくいかず困っております。 たとえば、Shell "explorer.exe http://www.post.japanpost.jp" は表示されますが、次は表示されません。 Shell "explorer.exe http://www.post.japanpost.jp/cgi-zip/zipcode.php?zip=1070052" VBAで、このような情報を付加して、ブラウザを起動させるには、どうしたらよろしいでしょうか。 どうか、どなたかお助けいただけないでしょうか。

  • FlashにJavascriptで動的に変数を付加したい

    Flashでカウントダウンするムービーを作成し、その初期値をJavascriptで動的に付加しようとしています。 -親ページに子ページを<iframe>で読み込む -親ページの読み込みは都合最初の1回のみ -子ページはcgiで書き出し、その際にカウントダウン初期値を動的に設定 -子ページの内容を書き換える度、カウントダウン初期値を動的に変更して行くイメージです。 -子ページに設定したinitValueの値を、親フレームのFlashに付加してその値からカウントダウンさせたい。 -下記のような記述で、IE6.0のみ動作不可 □親ページ ■Flash埋込部 -<object>、<embed>各々に"id"を設定 -付加するカウントダウン用変数restの初期値は60 <object classid=(以下省略)> <param name="movie" value="countdown.swf?rest=60" id="fls"> <param name="quality" value="high"> <embed src="countdown.swf?rest=60" id="fls2"(以下省略)></embed> </object> ■Javascript <head> <script language="javascript" type="text/javascript"> <!-- function setPrm(rNum){ rv = "countdowm.swf?rest=" + rNum; document.getElementById("fls").setAttribute("value",rv); //<object>用 document.getElementById("fls2").setAttribute("src",rv); //<embed>用 } --> </script> </head> □子ページ <head> <script language="javascript" type="text/javascript"> <!-- initValue = 30;//サーバーより動的に取得 //親に記述している関数を実行 window.parent.setPrm(initValue); --> </script> </head> ■ブラウザ毎の動作状況 □WIN -IE6.0・・・× -Firefox2.0・・・○ □Mac -Safari2.0・・・○ -Firefox2.0・・・○ IE6.0のsetAttributeでつまづいているような気がしますが、代替となる記述法がわかりません。 IE6.0で動作させる方法等、お知恵をお借り出来ればと存じます。 よろしくおねがいします

  • ASP.Net 別ウィンドウを開く・ジレンマ編

    大変お世話になっております。 現在別ウィンドウを開くのに ClientScript.RegisterStartupScript(Me.GetType, "OpenNewWindow", "<script language=""javascript"">window.open('URLを指定', 'TARGET');</script>") を使用しております。 ですが上記の場合だとjavascriptの為、ASP.Net で使用できる ~(チルダ)が使用できず、ルート表示ができません。 Response.Redirectで記述すると、ターゲットが指定できず、ウィンドウを上書きする形になってしまいます。 足して2で割れればいいのですが、javascriptで ~(チルダ)のようなルート指定ができる方法、もしくは、Response.Redirectでターゲットが指定できる方法など、もしあるようでしたら、お教えいただけますよう、何卒ご教授くださいませ。 上級者の方は、このジレンマをどのように克服されているのか是非ともお教えくださいませ。

  • asp(vbscript)でテキストの値を送信する

    <% dim TEST TEST = Request.Form("TEST")'別ページから値を取得 If TEST = FALSE Response.Redirect "http://localhost/~" '値を送信してきた所へ飛ぶ End If %> Response.Redirectにて 値を送信してきたフォームへ飛んだ時に 飛ばしてきたフォームのテキストボックスへ 同じ値を保持したいのですが… ★要は遷移前の入力情報をそのまま表示させたいのです。★ どのように値を返して、また取得して良いのか 方法が分かりません。

専門家に質問してみよう