人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ひとつの<input>の中に入力された値を
2つのcgiに渡したい(登録したい)と考えています。


具体的には、ユーザがメールアドレスを登録した際

・メール配信ツール(メルマガ配信用)
・顧客管理ツール(管理用)

の2つに値を渡したいのです。
どちらも自前のもので、ユーザの許諾ナシでまぐまぐに登録するような目的ではありません。

ご教示のほど宜しくお願いします。

●質問者: にらたま
●カテゴリ:インターネット ウェブ制作
✍キーワード:CGI ひとつ まぐまぐ メルマガ メール
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● kopj
●20ポイント

ひとつのCGIの中で、もうひとつのCGIを起動させるというようにするのはいかがでしょうか?

http://q.hatena.ne.jp/freewriter/

◎質問者からの返答

ありがとうございます。cgiじゃないとダメですか・・?


2 ● toyoshi
●20ポイント

cgiということはPerlでしょうか?

POST送信を行うスクリプトが下記のURLにありますので、そのまんま使えると思います。

http://oshiete1.goo.ne.jp/qa2808695.html

PHPのはこちらにありました

http://php.webmeister-jp.com/archives/2005/02/post_7.php

◎質問者からの返答

ありがとうございます!できればjavascriptで対応できるとうれしいのですが、可能でしょうか?


3 ● Yota
●20ポイント

formのactionで送信先を指定しないで、buttonにonclickイベントハンドラを使えばどうでしょう。Ajaxになっちゃいますが、cgiのurlをurl1,url2とすると、

<form>

<input type="text" name="mail"/>

<input type="button" onclick="reg(url1,this.form.mail.value);reg(url2,this.form.mail.value)"/>

</form>

Javascriptは

<script type="text/javascript" >

function reg(url,mail) {

var httpoj = createHttpRequest() ;

httpoj.open('GET', url+'?mail='+mail, true) ;

httpoj.send(null) ;

httpoj.onreadystatechange = function() {

if (httpoj.readyState == 4) {

var res = httpoj.responseText ;

alert(res) ;

}

}






}

function createHttpRequest(){

if(window.ActiveXObject){

try {

return new ActiveXObject("Msxml2.XMLHTTP") ;

} catch (e) {

try {

return new ActiveXObject("Microsoft.XMLHTTP") ;

} catch (e2) {

return null

}

}

} else if(window.XMLHttpRequest){

return new XMLHttpRequest() ;

} else {

return null ;

}

}


</script >

参考。

http://allabout.co.jp/internet/javascript/closeup/CU20050515A/in...


4 ● openseed
●20ポイント

JavaScript は、確実ではないので、やはり、CGIから、CGIを呼び出すのがよいと思います。

または、1回目のPOSTで返却するページに、<form> にすべて入力された値を設定した上で表示し、2回目のsubmit を促すのがよいのではないでしょうか。

2回目のページ表示時に必要であれば、onload で submit() を実行するのも可能です。(気持ち悪いですが。)


どうしても、JavaScript で行いたいのであれば、iframe または、ダミーのframe を用意して、form の onsubmit で、target と action をそれぞれ変更してsubmit するのではいかがでしょうか。

同じようなページがありましたので、参考まで。

http://sb.xrea.com/showthread.php?t=11855#post79351


5 ● lunlumo
●20ポイント

下手な魔改造を掛けるよりは,共通のデータベースに納める様に改修した方が良いのではないかと。

>POST送信を行うスクリプトが下記のURLにありますので、そのまんま使えると思います。

>http://oshiete1.goo.ne.jp/qa2808695.html

ここで紹介されているのはSOCKETを使用する方法ですね。PerlでHTTPを扱う場合,HTTP::Request等を使うのが一般的です。環境によっては使えませんが。

http://homepage3.nifty.com/hippo2000/perltips/lwpcook.html#POST

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ