• 締切済み

perlでの値を別のhtmlページに取得するには

申込フォームの値をperlで受け取り、その値を別のhtmlページで表示するにはどうするのでしょうか。

みんなの回答

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.8

> ぜひアドバイスを願います。 だからですね、どういう仕様が適切かは要求内容、つまりあなたが「外見上どういう表示や振舞をするページ」を作りたいかによって違う訳です。 その要求内容よって、登録ページは 1回の動作で 1件のファイルを作るのが適切か 1件の共通ファイルに追記して行くのが適切かとかとても沢山の事が変化します。 どういう場合はどうしろというノウハウ集は書ききれませんし、要求内容を全て提示されてもあなたの替りに仕様決め作業をしてあげる気は私にはありません。 あなた自身の実力で解決するか、さもなくば身近からまたは有償で力を貸してくださる方を見付けるのが良いと思いますよ。

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.7

No.6 です。 それは失礼しました。 > OPEN(~~,"<./~~.HTML");を使って書き込むのかまたはprint "location:~~~.html?送る値\n\n"; と言う事は、確認ページに送出すべきHTMLを、登録CGIで作成する仕様な訳ですか? それなら前者で良いでしょう。 しかし、一般的にはその場合は保存ファイルは画面出力用のHTMLでは無くて単なるデータの羅列を記憶しておいて、確認ページのCGIで HTML を生成する方が多いと思います。 まあ、そういう事を考えるのが仕様を決めると言う事で、細かな要求をさておいて正解の議論や提示には馴染みません。 頑張ってください。

houseroof
質問者

補足

ご返事ありがとうございます。 確認ページと別ページのレイアウトは違います。つまり別ページ(表を使用)にCGIから値を入力するということになります。ぜひアドバイスを願います。

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.6

仕様を決めろと言われて途方に暮れる方、例えば CGIどころかコンピュータ・プログラミング自体が未経験の方なら、短期間で実用に耐える CGI を作成するのは果てし無く不可能に近いです。 運転未体験でいきなり自動車免許の実技試験に合格する様なものです。 前回も書いたとおり、仕様を決めるには技術力が必要です。 決めた後にそれを作成するにも技術力が必要です。 頑張って経験を積んでくださいね。 長期戦で勉強する余裕が無くあきらめる選択肢も無いなら、人に頼るしかありません。 しかしこの場で完成品を回答するのは不可能です。 需要者(あなた)と技術者が力を合せて仕様を決める作業がまず必要だからです。 既成の完成品を探そうにも、それもまた難しいです。 こいうい所で質問する場合には、欲しい物の内容をいかに上手に説明できるかが勝負になります。

houseroof
質問者

お礼

きびしいお言葉ありがとうございます。実は、申込フォーム、確認ページは完成しています。これからcgiへの値の取得(大体完成)と別のHTMLページへの取得が問題です。後者の場合ファイルの読み込み、つまりOPEN(~~,"<./~~.HTML");を使って書き込むのかまたはprint "location:~~~.html?送る値\n\n"; のいずれが適当なのか分かりません。よろしくお願いいたします。

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.5

普通はCGIでやる処理ですが、どうするもこうするも、全て自分で決めて自分で作ります。 フォーム中の必要な情報をどういう名前のファイルにどういう形式で記憶するかという「仕様」をまず決めて、登録CGIはその「仕様」に従った動作をする様に作ってください。 一覧CGIも同様にどのファイルから何を読んでどういう一覧を出力するかという「仕様」を決めてそのとおり作ってください。 仕様を決めるには技術力が必要です。 決められないなら、頑張って経験を積んでくださいね。

houseroof
質問者

補足

「仕様」を決めるとのことよく分かりました。でもどのように「仕様」うに決めるのか悩んでいます。perl、javascript、htmlだけでkのようなプログラムを作れるのでしょうか

  • 15mm
  • ベストアンサー率65% (65/100)
回答No.4

ええと、とりあえず動作イメージを補足していただいてよろしいでしょうか? やりたいことによって最適な方法は違ってくるものですので。 ・顧客が申込フォームから送信→管理人側にログとしてその情報を残し、それを元に過去のものとあわせページ表示 ・顧客が申込フォームから送信→顧客が確認するためだけに一時的に表示 ・(略)→その内容によってサイトの一部のページが書き換わる そのたもろもろ実際の動作イメージをある程度細かく書いていただけると回答しやすいです。 それと、あなたの力量やサーバ環境も関わってきますがどうでしょうか? cgiが動作する環境かどうか、cgiを作成・設置する知識はある、とかです。

houseroof
質問者

補足

・顧客が申込フォームから送信→管理人側にログとしてその情報を残し、それを元に過去のものとあわせページ表示 大体そういうことです。つまり顧客が申込フォームに記入するいくつかの値を、ログとしてその情報を残し、ある別なhtmlページにその値を書き込みます。それで一般的な顧客がその別なhtmlページで値を見ます。つまりいろいろな顧客がフォームで記入した値がその別なhtmlページの表に順番に記入されるということです。 これでお分かりでしょうか。

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.3

「別のhtmlページ」は、自動的に開いて欲しいのですか? それ専用のURLにアクセスした時に開けば良いんですか? 開くのは、「申込フォーム」を送信した人自身ですか? それとも管理者ですか?

  • Suzi
  • ベストアンサー率38% (130/334)
回答No.2

 別のhtmlページへの表示は、送信前の確認のことだと思われますが、違っていたら済みません。  別のではなく同じPerl(cgi)内に値をform method=postで送り、送信パート前に、それらをhtml表示させれば良いと思います。

  • 15mm
  • ベストアンサー率65% (65/100)
回答No.1

perl(cgiですかね?)で受けた値を元にHTMLを出力する これが一番合理的です。perlに送ったのですからperlが応答する。 ユーザの環境によりますが print "location:~~~.html?送る値\n\n"; として、javascriptで画面に反映、というのもありでしょうが、おいしいことは何も無いと思います。

houseroof
質問者

補足

説明が不足ですみませんでした。(顧客用の)申込フォームの値をjavascriptでperlで受け取り、その値をある特定の(自動的でなく)htmlページに取得する場合のことです。そのときhtmlページにテーブルがありその行に値を挿入します。 >おいしいことは何も無いと思います ということはどういうことでしょうか >print "location:~~~.html?送る値\n\n"; 送る値はjavascriptの値ですか。また「?」マークはどういう意味でしょうか

関連するQ&A