電子書籍の厳選無料作品が豊富!

HTMLを複数作ると管理が大変なので、ひとつのCGIにまとめようかと思ってます。
HTMLフレームから、左と右をひとつのCGIファイルから呼び出すにはどうしたらよいでしょうか?

私は、CGI作ったことないので、ソースがわかりません。
パーミッションとかは、フリースプリクトの掲示板とかをいぢっているのでわかるのですが…

簡単なCGIのソースがほしいです、どなたか教えてください。

A 回答 (4件)

簡単にperlでソースを紹介しましょう!!


(必要においてカスタマイズして下さい。)
-------------------------------
if($in{'page'} eq 'a'){
&page_a_disp;
}
elsif($in{'page'} eq 'b'){
&page_b_disp;
}
else{
&page_main_disp;
}
-------------------------------
sub page_a_disp{
print <<"END";
<html>
PAGE A
</HTML>
END
}
-------------------------------
sub page_b_disp{
print <<"END";
PAGE B
<html>
</HTML>
END
}
-------------------------------
sub page_main_disp{
print <<"END";
<html>
<frameset>
<frame name="z.cgi?page=a">
<frame name="z.cgi?page=b">
</frameset>
</html>
END
}
-------------------------------
となります。
参考にして下さい。
    • good
    • 0

rokujiroさんは、親切にサンプルソースを載せられましたね。


一応、老婆心ながらrokujiroさんの補足です。
$in{'page'}を使用する場合には、
プログラムの最初の方に(perlのパスの後)に、

require 'cgi-lib.pl';
&ReadParse(*in);

を忘れないようにしてください。

cgi-lib.plで渡された環境変数を分解して、$in{'page'}などといった、連想配列に入れてくれます。

cgi-lib.plの最新版は、
http://cgi-lib.berkeley.edu/ から入手できます。

ではでは・・・・
    • good
    • 0

こんにちは。



もしかしたら、誤解しているかも知れませんがお許しください。
多分、質問の趣旨はこういうことかな・・・と思います。

フレームHTMLのなかで

<FRAMESET cols="50%,50%">
<FRAME src="A.html">
<FRAME src="B.html">

のA.html、B.htmlの管理が大変だから、両方とも、Z.cgiという形にしたいと言う事ですね。

どうしてもCGI(Perl)で実現したいという事であれば、次のようにすればできます。

<FRAME src="Z.cgi?page=A">
<FRAME src="Z.cgi?page=B">
として、Z.cgiに変数を渡し、プログラムの中で、変数による判断をさせて、おのおののHTMLを生成する、と言った具合です。

変数の受け取り方は、Perlのどの参考書でも書いてありますよ。

但し、この方法では、HTMLのソースコードはperlに埋め込まれる形になるので、メンテナンスが非常にやっかいになります。
素直に、HTMLのままで管理したほうが良いのでは・・・?

それから、CGI等の解説サイトとしては、下記のサイトが判り易いと思います。

また、サンプルソースを手に入れたければ、次のサイトも役に立ちますよ。

http://www.i-say.net/cgi/

それでは・・・

参考URL:http://tohoho.wakusei.ne.jp/www.htm
    • good
    • 0
この回答へのお礼

レスありがとうございます。
そうです、私が言いたいことはそれで合ってますよ。
「Z.cgi?page=A」のリンクが知りたかったんです。
私はてっきり「Z.cgi?A」だと思っていて、エラーが出まくっていたので困ってました。
どうもありがとうございます~、あとはソースだけですね…(汗

お礼日時:2002/03/25 05:50

CGIを作ったことが無いということなので、問題を解決するのに


相当時間がかかると思われます。
CGIはどのような言語で作成する予定ですか?Perlでしょうか。
参考URLでCGIの仕組みを学習されてから、具体的なご質問をされるとよろしいのではないでしょうか。

参考URL:http://tohoho.wakusei.ne.jp/

この回答への補足

レスありがとうございます。
フリーのスプリクトは改造しまくっているので、改造は苦手ではないです。
言語は、表示ができれば、PerlでもCGIでもいいです。
そんなに、極めるつもりはないので、今回の課題のみが知りたいです。

補足日時:2002/03/25 05:48
    • good
    • 0

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