【Perl】初心者コーナーPart10

このエントリーをはてなブックマークに追加
953nobodyさん
Perl4で作ったBBSがIE以外で表示できません。
ナゼなのでしょうか。

1.NNの場合、Perlが出力したソースが表示されます。
2.Operaの場合はファイルダウンロードのダイアログが起動します。

IEでは問題ないんですけど
私がアフォだからっていう以外の理由を知りたいです。
お願いします。
954nobodyさん:02/03/26 12:01 ID:???
print "Content-type: text/html\n\n";
ってやってるあたりがおかしいから。
955953:02/03/26 12:22 ID:???
>>954
あたりって・・・見たところ良いみたいなんですが(涙。
こんな現象は良くあるんでしょうか?
956 ◆Googlexo :02/03/26 12:29 ID:???
>955
君の良いと正解の良いには違いがある可能性があります。
とりあえずソース晒してください。
957953:02/03/26 12:48 ID:???
>>956
その「あたり」でいいですか?
print<<END;
Content-type: text/html\n\n
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
958nobodyさん:02/03/26 12:52 ID:???
>957
それ以前にprintをしている可能性は?
959953:02/03/26 13:02 ID:???
>958
なさそうです。敢えて言えばサブルーチン名にPrintPageっていうのを使ってます。これは問題ないですよね。
960nobodyさん:02/03/26 13:09 ID:???
ヒアドキュメントの中に\n\nとか書いても解釈されるんだ。はじめて知った。
とりあえずCGIファイルの先頭あたりで
print "Content-type: text/html\n\n";
して様子を見てみるとよいかと。
961nobodyさん:02/03/26 13:13 ID:???
>960
ヒアドキュメントでも
print <<'END';
ってやったら解釈されないから注意。
シングルクォーテーションだと解釈されないのは同じだから。
でも、覚えておくと逆に便利な事もある。
メアドをプリントする時とか\入れなくて済むし。
962953:02/03/26 13:20 ID:???
>>960
>とりあえずCGIファイルの先頭あたりでprint "Content-type: text/html\n\n";
これで正常になりました。

やはり以前のステップに問題があるんだろうと思いますが
現象が解消したので、じっくりゆっくり調べます。
本当にありがとうございました。