Kurohama
CGI設置の初歩知識
はじめに
■CGIスクリプトの初歩的な設置手順をご説明します。
こちらで紹介する知識は、あくまで初歩的なものですので、より詳しくPerlやCGIについて知りたい方は専門のサイトをご覧になるとよいと思います。

Perlをインストールする手順は以下のページになります。
Perlのインストール
Apacheをインストールする手順は以下のページになります。
Apacheのインストール
CGIファイルの一行目
■ファイルの拡張子がcgiとなっているファイルの一行目は決められた書式で書かなければなりません。
これをパールパスといいます。
パールパスは利用するサーバによって異なるので、プロバイダーやレンタルサーバの業者にパールパスを問い合わせて、拡張子がcgiとなっているファイルの一行目を書き換えてください。
たいていは
#!/usr/bin/perl
もしくは
#!/usr/local/bin/perl
だと思います。
変数
1.変数とはデータなどを代入する入れ物の事です。
$(ダラー)から始まり、アルファベットなどが変数名として使用可能です。-(ハイフン)など使用できない文字もあります。


$a = "黒浜";
$aという変数に黒浜という文字列を代入。

変数に文字列などを代入する場合は、文字列をシングルクォート(')もしくは、ダブルクォート(")で囲まなければ変数に代入されませんので注意してください。(文字列が数字のみの場合は、シングルクォートなどで囲まなくても代入されます。)
必ず最後にセミコロン(;)をつけます。

○ $a = "黒浜";
$aという変数に黒浜という文字列が代入される正しい書き方。

× $a = 黒浜;
$aという変数に文字列が代入されない誤った書き方。
2.メールアドレスを変数に代入する際は、メールアドレスをシングルクォートで囲んでください。
シングルクォートで囲んで変数に代入する場合とダブルクォートで囲んで変数に代入する場合では、動作が多少異なります。
当サイトで公開している各CGIに付属している、setting.plの設定にこのような記述があります。

#あなたのメールアドレス
$sendAddress = 'xxx@xxx.com';

このようにシングルクォートで囲むとメールアドレスをそのまま代入できます。
ダブルクォートで囲むと@の前¥にをつけなければなりません。
ダブルクォートでメールアドレスを囲む場合の記述

#あなたのメールアドレス
$sendAddress = "xxx¥@xxx.com";
HTMLの出力
1.CGIからHTMLや、Javascriptを出力する場合、print文もしくはヒア文字列を使用します。
2.print文

print文でhtmlを出力する際の記述例

print "Content-type: text/html¥n¥n";
print "<!DOCTYPE HTML PUBLIC ¥"-//W3C//DTD HTML 4.01 Transitional//EN¥"> ¥n";
print "<HTML>¥n";
print "<HEAD>¥n";
print "<META http-equiv= ¥"Content-Type¥" content= ¥"text/html; charset=Shift_JIS¥">¥n";
print "<TITLE></TITLE>¥n";
print "</HEAD>¥n";
print "<BODY>¥n";
print "</BODY>¥n";
print "</HTML>¥n";
2.ヒア文字列

ヒア文字列でhtmlを出力する際の記述例

print <<"OUT_HTML";
Content-type: text/html


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<TITLE></TITLE>
</HEAD>
<BODY>
</BODY>
</HTML>

OUT_HTML

ヒア文字列でHTMLを出力したほうが記述が簡単なので、CGIでHTMLを出力する際はヒア文字列を使ったほうがよいと思います。
ヒア文字列の最後の記述を終端文字といいます。(OUT_HTML)
終端文字の前後にスペースなどの空白を作らないでください。 エラーになります。 改行はかまいません。
文字化けについて
■CGIファイルに日本語を記述すると一部の文字が化けることがあります。
対処法
化ける文字の後ろに¥をつけます。

パソ¥コン
携帯電話の初期入力文字指定方法
■i-mode

istyle="1" (全角かな)
istyle="2" (半角カナ)
istyle="3" (英字)
istyle="4" (数字)

使用例
<INPUT TYPE="text" NAME="test" istyle ="3">
フォームの初期入力文字を英字に指定
このページのご意見
■このページへのご意見・ご要望、間違い、誤字・脱字のご連絡はこちらからお願いします。
Copyright(C)2009 KUROHAMA All rights reserved