• ベストアンサー

PerlでCGIの書き方

今、HTML:Templateを用いてCGIのプログラムを書いています。 基本的にCGI上のボタンをおすとPOSTで情報をわたして、次のCGIにいき、そこからTMPLを読み出して、画面を表示してるのですが、画面場のボタンをおしてもCGIを更新せずに、Perlの実行だけすることは可能ですか?あるいは、POSTでCGIに届いた情報をIF文で中身を確認して、表示するTMPLをかえて、Perlの実行も行うのが普通のやりかたなのでしょうか? あまりよくわからずにネットだけの情報をたよりにプログラミングをしているので設計の仕方など分からないことが多々あります。 どなたかCGIに詳しい方ご返答おねがいします。

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

  • ベストアンサー
  • ralf124c
  • ベストアンサー率52% (232/446)
回答No.2

Ajaxからコールして受信内容を破棄すれば良いです。 こんな感じ function HogeHoge(){ var xmlhttp = createHTTPRequest(); var CGIURL = 'CGIのフルURL「http://」から記述'; var sDT; xmlhttp.open('GET', CGIURL, true); xmlhttp.onreadystatechange = function(){ if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { sVOID = xmlhttp.responseText; } else { // 通信に失敗 } } else { // 通信中… } } xmlhttp.send(null); }

kenpanch7
質問者

お礼

実は、まだ調べてないですが。本当にありがとうございました。

kenpanch7
質問者

補足

解決法をありがとうございます。Ajaxという単語は聞いたことあったのですが、何かは知りませんでした。 こういうときに必要なんですね。実際に必要にせまられないと分からないものですね。 少し調べてみて、挑戦してみますね。それにしても、プログラミングは奥が深すぎるし、肩がこるし、神経質にならないといけないし、将来SE(就職活動中の学生なので)になるかどうか、本当に悩みます。

その他の回答 (1)

  • okmotokun
  • ベストアンサー率59% (92/155)
回答No.1

「CGI」とはクライアントからの要求(リクエスト)を受けてサーバーでプログラムを実行し、その結果を返して画面に表示する「仕組み」です。 したがって、プログラムの実行だけをして結果を返さないようにすることはできません。(結果を返さないとエラーになります)

kenpanch7
質問者

お礼

そうですね。そういわれてみればそのように聞いたことがあるようなきもします。ありがとうございました。

関連するQ&A