• 締切済み

CGIで出力するテキスト内容をhtml側で表示する方法の2

前回、 http://okwave.jp/qa4532069.html で質問させて頂いた者です。 その後、joker_mk2さんに教えていただいた方法を使って、下記のように表示できるようになりました。 (前回、ブラウザの設定を色々変えた後、再起動で動くようになったようです) 他のページも参考にして、html側の書き方を変えてみましたが、この方法でもOKでしょうか。 (動いているから、結果オーライかも知れないのですが) 1.CGIスクリプト(Perlで記述)を用意... test.cgi ----------------------------------------------------- #!/usr/bin/perl my $val = 123; print "Content-type: application/x-javascript\n\n"; print "document.write('<p>変数の値=$val</p>')"; ----------------------------------------------------- 2.htmlを用意 ... test.html ----------------------------------------------------- <html> <head> <title>test</title> <meta http-equiv="Content-Type" content="text/html; charset=x-sjis"> </head> <body> <script language='JavaScript' src="http://xxx/CGI/test.cgi"> </script> </body> </html> ----------------------------------------------------- 上記のとき、動作として、 ◆ブラウザからhtml(http://xxx/test.html)にアクセスした場合、 ブラウザ上に 「変数の値=123」 と表示された。 (元々、やりたかったのは、こういうことでした。ありがとうございました) ◆ブラウザからCGIのパス(http://xxx/CGI/test.cgi)に直接アクセスした場合、ファイルのダウンロード確認ダイアログが出た。 ファイルをダウンロードして中身を見ると、 「document.write('<p>変数の値=123</p>')」 と書かれていた。 以上です

みんなの回答

  • kt_yuka
  • ベストアンサー率53% (8/15)
回答No.1

cgiでJavascriptを生成してるんですよね。 いいと思います。 これが元々やりたかったのですか? 単純にssiじゃダメなんでしょうか。

goku3
質問者

お礼

ご回答ありがとうございました。 お礼お返事が遅くなり、大変申し訳ございません。

goku3
質問者

補足

”Javascriptを生成する”という意識は特に無かったのですが、 --------------------------------------------------- print "Content-type: application/x-javascript\n\n"; print "document.write('<p>変数の値=$val</p>')"; --------------------------------------------------- の部分が、そのJavascriptそのものということですね。 (Content-type: でそのようなパラメータを書いておきながら間の抜けた問いですが、 実際は見よう見まねで、無思慮に、”単純にそういう文字列を書いただけ。” =意味の分からない呪文、書いてみたら動いた・・・という状況でした) ssi というのでやろうとすると、 ・Webサーバ側にそのような対応が入っている必要がある ・利用者側のブラウザ設定によっては動かない ということを伺ったところから、ssiを使わないやり方でと思っていました。 →今回、CGIはそのサーバで動かしてみれば、たまたま動いたので使った。 ssiでは、.htaccess の設定が云々という所にハードルもあり・・・ というレベルです。 ただ、Javascriptが使えるぐらいなら、常識では、そのssiが入っているということでしょうか。 やりたいことの実現(目的達成)のため何でもありという、知識偏頗な感じです・・・ CGIよりはssiがお勧めというようなことがありましたら、ぜひ教えてください。 また、お時間ありましたら、よろしくお願い致します。

関連するQ&A