dポイントプレゼントキャンペーン実施中!

どなたか、ご教授下さい。
ページ遷移に伴うページIDの引き継ぎについての質問です。
ページの遷移として、
他サイトページ > a.html > b.html(メールフォームページ)
となります。

a.htmlには、他サイトページのIDを引き継ぐ以下のjavascriptが貼られております。
<script language="Javascript">
<!--
function getQueryString() {
var rtnparam = new Array();
var query = window.location.search.substring(1);
var parms = query.split('&');
for (var i=0; i<parms.length; i++) {
var pos = parms[i].indexOf('=');
if (pos > 0) {
var key = parms[i].substring(0,pos);
var val = parms[i].substring(pos+1);
rtnparam[key] = val;
}
}
return rtnparam;
}
function setCgmId() {
var param = getQueryString();
document.forms["formLink"].action += "&_cid=" + param["cid"] + "&_blogid=" + param["bid"];
}
//-->
</script>

b.html(メールフォーム)で「cid」と「bid」を
input type="hidden"
で引き継ぐとしたら、上記のそれぞれ「cid」と「bid」の
valueはどのように記載すれば、宜しいのでしょうか?

<input type="hidden" name="bid" value="bid">
<input type="hidden" name="cid" value="cid">
としてみましたが、駄目でした。

それとも別の書き方があるのでしょうか?

つたない文章で申し訳ありません。
何卒お力添え下さい。
宜しくお願い致します。

A 回答 (5件)

これでどうですか。



【A.html】
<html>
<head>
<title>A.HTML</title>
<script type="text/javascript">
window.onload=function(){
document.links[0].href+="?"+window.location.search.substring(1);
}
</script>
</head>
<body>
<a href="b.html">b.html</a><br>
</body>
</html>

【B.html】(メールフォーム)
<html>
<head>
<title>B.HTML</title>
<script type="text/javascript">
window.onload=function(){
var query=window.location.search.substring(1);
document.links[0].href+="?"+query;
var parms=query.split('&');
for (var i=0;i<parms.length;i++){
if(parms[i].match(/(\w+)=(\w+)/))document.forms[0].elements[RegExp.$1].value=RegExp.$2;
}
}
</script>
</head>
<body>
<a href="a.html">a.htmlへ戻る</a><br><br>
<form method="post" action="mail.cgi">
<input type="hidden" name="cid">
<input type="hidden" name="bid">
</form>
</html>
    • good
    • 0
この回答へのお礼

okmotokun様

根気づよくお付き合い頂き、誠に有り難うございます。
何度もすみません。

頂いたコードを試してみました。
うまく行きそうです。
先方の提供して来た訪問者用のコードにこちらの認識と少し違いが
あったようなので、その辺りをクリアすれば行けるのではないかと
思います。

ここ数日パニックになってました。
今日、やっと知り合いにこの辺りのことが分かる人が
見つかりそうになりましたので、
その方に今回頂きましたスクリプトを含めて相談させて頂きます。

聞きっぱなしで大変申し訳ありませんでした。
本当に有り難うございました。

お礼日時:2008/10/21 15:23

思い違いでした。


リロードしても消えることはないですね。

この回答への補足

ご回答有り難うございます。

色々何か良い解決策はないかと
調べているのですが、中々見つかりません。

cookieを使わなくてもいけるのでしょうか。
普通に
A.html > B.html > C.html
と遷移すれば、引き継げるものなのでしょうか?

補足日時:2008/10/20 09:59
    • good
    • 0

【他サイト】


<a href="http://yourdomain.jp/a.html?cid=xxx&bid=yyy">
 ↓
【a.html】
<a href="http://yourdomain.jp/b.html?cid=xxx&bid=yyy">
 ↓
【b.html】(メールフォーム)
<input type="hidden" name="cid" value="xxx">
<input type="hidden" name="bid" value="yyy">

(1)他サイトから a.htmlへのリンクタグのパラメータとして送られてきた cid、bidを
(2)a.htmlの b.htmlへのリンクタグのパラメータとしてセットし
(3)a.htmlのリンクから b.htmlがリクエストされたらメールフォームの inputタグの入力値としてセットする
で、(2)(3)をjavascriptで実現したい、ということですね。
1つ問題なのは、(1)(2)(3)のどこかでリロードしたら cid、bid は消えてしまうってことです。cookieを使えばいいのかな。
    • good
    • 0

他サイトから、


http://yourdomain.jp/a.html?cid=xxx&bid=yyy
として、a.html がリクエストされるんですよね。
次に、b.html はどういう方法でリクエストするんですか。
他サイト > a.html > b.html ですと、他サイトから a.htmlで受け取った cid、bid を a.htmlから b.html に渡す処理が必要ですが・・・。

この回答への補足

ご連絡ありがとうございます。

a.htmlからb.htmlへは、
リンクボタンでb.htmlへと遷移する形です。

その際に何か処理を加えるスクリプトがあるのでしょうか?

補足日時:2008/10/19 16:07
    • good
    • 0

cgiのカテゴリなのに、言語が記載されていないので、もしかしてJavaScriptだけでやりたいのでしょうか?


それなら、こちらが参考になるかと…。
http://f32.aaa.livedoor.jp/~azusa/index.php?t=js …

参考URL:http://f32.aaa.livedoor.jp/~azusa/index.php?t=js …

この回答への補足

すみません、
自分でもよく分かってない部分でやっていて
説明にかなり難があるのですが、
あるサイトからの訪問者に特定するIDがついてくるので、
javascriptで、IDを保持して、次のcgiを使ったメールフォームページで
入力時にIDを引き継ぐということなんです。
そしてcsvに書き出します。

参考サイト有り難うございます。
ちょっとよく見てみます。宜しくお願い致します。

補足日時:2008/10/18 19:29
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!