レポ
クラウドで
伸びる人沈む人

連絡特定商取引将来設計運営方針&メルマガSEの彼女は?
成功レポート集 Fedora9インストール! EclipseでJava Oracleバックアップのアーキテクチャ ゼロからHPでCGI 便利ネット知識
無料レポ&講習 IT業界の実態 linux処方箋 Java処方箋 Oracle処方箋 Perl処方箋
CGI(Perl)ファイルで変数を使ってブラウザ(ホームページ)に表示

<概要>


CGI(Perl)は、当たり前ですがプログラムです。
どんなプログラムも共通なのは、変数を使うということです。


ところで、プログラム必須の
変数って何?


と言いたくなりますね。なんだか難しそう?
いえ、難しく考える必要はありません。
何故なら、サーチマンがこのページで丁寧に説明していきますので。


そうは言っても、もCGIを使うためには、知っておかなければならない知識ですので、
覚悟を決めて覚えましょうね。


<何回も表示させたい場合は、変数を使おう>


「習うより慣れろ」ということで試していきましょう。

まずは以下をコピペして、CGIファイル(hello.cgi)をつくってサーバーにアップしましょう。
サーバーにアップ方法を忘れてしまった方は、こちらを復習してください。

#!/usr/bin/perl
print "Content-type: text/html \n\n";
print "<html>";
print "<head><META http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\"></head>";
print "John:how are you?<br><br>";
print "Paul:fine thank you. and you?<br><br>";
print "John:me, too.What are you doing?<br><br>";
print "Paul:I am studying.<br><br>";
print "</html>";


中学校の英会話の勉強みたいですが、ブラウザには↓のように表示されますね。



さてさて、ここでよーく考えてみてくださいね。
このホームページ(CGIファイル)には、JohnPaulが何回も出てきます。


このように何回も出てくる単語は、
変数を使うとプログラムがぐっと楽になります。
そんな風に考えていくのです。


と言ってもチンプンカンプンでしょうから、↓具体的にみていきましょう。

<$をつければ変数になる>


具体的にどうするのか?
もう、こんなの慣れですから、まずはCGIファイル(プログラム)をみていきましょう。

hello.cgiをこんなふうに変更してみます。そしてサーバーにアップしましょう。

#!/usr/bin/perl
$a = "John";
$b = "Paul";
print "Content-type: text/html \n\n";
print "<html>";
print "<head><META http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\"></head>";
print "$a:how are you?<br><br>";
print "$b:fine thank you. and you?<br><br>";
print "$a:me, too.What are you doing?<br><br>";
print "$b:I am studying.<br><br>";
print "</html>";


サーバーにアップしたら、ブラウザからみてみましょう。すると、CGIファイルの中身は違いますが、
全く同じ画面で見える。ということがわかりますね。



では、変数について解説しましょう。
$a = "John"; つまり、$aは、Johnだって、宣言しているのです。


この宣言さえしてしまえば、
あとのプログラムでは、$aは自動的にJohnになるのです。もちろん、$bについても同じです。


そう、アルファベットに
$をつければ変数になる。


そして、一度宣言してしまえば、プログラム中で何回も使える。
これが変数なのです。

<変数の値を変えてみよう>


では変数がわかったところで、ちょっと応用編です。

※試しに、
$a = "佐藤";
$b = "田中";

としてみましょう。つまり、↓のようなCGIファイルでサーバーにアップしてみます。

#!/usr/bin/perl
$a = "佐藤";
$b = "田中";
print "Content-type: text/html \n\n";
print "<html>";
print "<head><META http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\"></head>";
print "$a:how are you?<br><br>";
print "$b:fine thank you. and you?<br><br>";
print "$a:me, too.What are you doing?<br><br>";
print "$b:I am studying.<br><br>";
print "</html>";


変数を使っているので、ブラウザでみると以下のようになりますね。


できましたね。

これでCGIの基礎、変数の扱いなどを覚えました。これで、どんどん応用できますよ!!

大分、慣れてきましたね。最後に、
CGIエラーを簡単に見つける方法を
勉強しておきましょう。


ありがとうございました。