CGI WEB [ CGI配布 CGI解説 ホームページ作成支援 ]
ホーム|CGI配布|CGIランキング|CGIサポート|CGI解説|ワンタッチボード|ワンタッチメール|クイズ|自宅サーバ|サーバガイド|登録太郎|CGI WEBサーチ|CGI WEB窓口


back
ヘッダ出力





CGIでは投稿フォームや投稿記事の表示、エラー画面の表示など色々な画面をブラウザに出力しますので<body>タグまでをサブルーチン化しておくと良いでしょう。

■ヘッダ出力サブルーチン例

sub header {
print "Content-type: text/html\n";
if ($set_cookie eq 'on') { &set_cookie; }
print "\n";

print <<"EOD";
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-type" content="text/html; charset=Shift_JIS" />
<title>ヘッダ出力</title>
<style type="text/css">
<!--
a:link  {text-decoration:none; color:#3030c0}
a:visited {text-decoration:none; color:#3030c0}
a:active {text-decoration:underline; color:#f00000}
a:hover  {text-decoration:underline; color:#f00000}
-->
</style>
</head>
<body bgcolor="#ffffff" text="#000000">
EOD
}

HTMLデータを出力するのですからMIMEタイプをtext/htmlとします。 クッキーを保存する場合は変数$set_cookieに「on」を格納して「set_cookieサブルーチン」を呼び出しクッキー保存(クッキーヘッダ出力)の処理をします。 最後に\nの出力で空行を打ちMIMEヘッダの終わりをPerl処理系に伝えます。 クッキーヘッダ出力をする際はこのようにMIMEヘッダ出力と空行出力との間で行うのが正規の書式です。

次にHTMLの<body>タグまでをヒアドキュメントを使って出力します。

当サイトが配布するCGIはシフトJISコードで保存していますので<meta>タグでシフトJISコードを宣言します。 これは<title>タグより前に宣言するようにしましょう。 charsetには他に「EUC-JP」や「ISO-2022-JP」等が指定出来ます。

スタイルシートも設定しています。 a:hoverはリンクを貼った文字にマウスポインタが重なった時に適用されるスタイルです。



□更新履歴
 2007.04.22 全体的に内容を見直し




CGI WEB