OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

POSTについて。初心者にもわかるように教えてください。

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

お礼率 30% (17/55)

けっこうどの文献みても、htmlのinputからのデータ引渡しについては結構書いてあるのですが、cgiで使用した変数を、次のcgiへ引き継ぐ方法はあまり書かれていません。(見ている文献が初心者用ばかりだという理由もあるかと思いますし、どっちにしろちんぷんかんぷんなのですが・・)
以下のような例の場合に、abc.cgiおよび、xyz.cgiには、どのような記述をすればよろしいのでしょうか?


abc.cgi csvデータの取り込み $a="Iam2888" $b=2888
 ↓
 ↓ $a、$bのデータを受け渡し
 ↓
xyz.cgi 変数の引継ぎ

質問が、初歩的すぎて申し訳ありません
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全3件)

  • 回答No.1
レベル3

ベストアンサー率 0% (0/0)

一回、別のデータファイルにCGIから書き込んで 次のCGIファイルを使うときにまた読み出せばいいのではないでしょうか? ...続きを読む
一回、別のデータファイルにCGIから書き込んで
次のCGIファイルを使うときにまた読み出せばいいのではないでしょうか?
補足コメント
Iam2888

お礼率 30% (17/55)

そうすると、多数の人が利用していた場合、タイミングによっては、一度書き換えた別のデータファイルが、他人によって作業が終了しないうちに書き換えられるって可能性ありませんか?
どなたか、POSTによるperlの雛型を提示していただくと助かります。
投稿日時 - 2001-07-07 23:32:05


  • 回答No.2
レベル5

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

容量が小さいのであれば、abc.cgiの出力として、<input type="hidden">タグを送り出し、xyz.cgiを呼び出すときにデータを渡すようにすればいいと思います。 容量が大きくて、ブラウザを経由して渡すのが難しい場合には、たとえば、クッキーかhiddenタグで、abc.cgiで作成したデータファイルの名前をブラウザに渡し、 ...続きを読む
容量が小さいのであれば、abc.cgiの出力として、<input type="hidden">タグを送り出し、xyz.cgiを呼び出すときにデータを渡すようにすればいいと思います。
容量が大きくて、ブラウザを経由して渡すのが難しい場合には、たとえば、クッキーかhiddenタグで、abc.cgiで作成したデータファイルの名前をブラウザに渡し、xyz.cgiでそのファイル名のデータファイルを読み出して処理すればうまく行くと思います。
データファイルの名前は、たとえば
time . $$
というような値を使えば、重複の可能性はほとんどないと思います。$$は、プロセス番号を表す特殊変数です。
なお、ファイル名がおかしくなっていないかどうかきちんとチェックしないと、セキュリティホールになりかねないのでご注意を。
補足コメント
Iam2888

お礼率 30% (17/55)

ブラウザを経由してってことは、それってたぶんGETですよね?
postで渡すっていうのは無理なのでしょうか、やり方としてやっぱりクッキーしかないんでしょうかねぇ。
クッキーもちんぷんかんぷんですけど(涙)
なんか、初心者でも明朗に理解できる、get以外の手っ取り早い方法ってありませんでしょうか?雛形書いてくれたら助かるなぁ。
投稿日時 - 2001-07-09 07:58:43
  • 回答No.3
レベル12

ベストアンサー率 75% (398/526)

 abc.cgi、xyz.cgi は、それぞれ HTML を出力するのですか? だとすれば、直接変数の値を渡す方法はないと思います。  やはり出力する HTML に HIDDEN データとして変数名と値を持たせ、画面遷移を行うボタンで(リンクで遷移するならJavaScriptで)送信するようにすれば、POST で渡せますよね。  あるいは、init.pl などに csv データの取り込みルー ...続きを読む
 abc.cgi、xyz.cgi は、それぞれ HTML を出力するのですか?
だとすれば、直接変数の値を渡す方法はないと思います。

 やはり出力する HTML に HIDDEN データとして変数名と値を持たせ、画面遷移を行うボタンで(リンクで遷移するならJavaScriptで)送信するようにすれば、POST で渡せますよね。

 あるいは、init.pl などに csv データの取り込みルーチンを書き、両 CGI から require すれば、引継ぎではないですが値は共有できると思います。
(csv が、リアルタイムに更新されなければの話ですが)
このQ&Aで解決しましたか?
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

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

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

特集


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

-PR-

ピックアップ

-PR-
ページ先頭へ