タイトル

最近はCGIを改造しまくって、元がなくなっていくのを楽しんでいる私です(笑)。

ここは、CGIの改造(中級編)についてお話いたします。

やっぱり、HTMLの知識は必須です。

教材は「ASKA BBS」 (KENT WEB)です。
これは本当に為になるます。基本的機能はほぼそろってるので、 ほかのCGIとかを改造してスキルアップしてから見ると、「こういう処理してたんだー」と感動します。

ちなみにここはちゃんとした文法とかはやりませんから。 正確にわかりませんし。(なんとなくわかるけど) 正確に勉強したい人はほかを探してくださいな。
ただ、最初っから堅苦しいことをやると挫折するかもしれません。(私がそうです)
私は実践派ですから。


さて、余談はこのくらいにして本題に行きましょうか。 まずは変数です。

変数っていうのは $ がついているものです。 たとえば、CGIファイルの上の方にある


# bodyタグ
$body = '<body bgcolor="#F5F5F5" text="#000000" link="#0000FF" vlink="#800080">';
というものです。

これは、「$body」という文字列は 「<body bgcolor="#F5F5F5" text="#000000" link="#0000FF" vlink="#800080">」 に置き換えるよと定義しているのです。
ちなみにその上にある # は、CGIのコメントアウトです。 #より後ろの一行はコメントとして扱われます。 (HTMLのように挟みません。改行まで有効です。)
これを使っているところを見てみましょう。
「$body」を検索してみてください。 (検索はどこで使われてるか調べるために頻繁に使います。覚えましょう。)


</STYLE>
<title>$title</title></head>
$body
ヘッダのところにありますね。ここでBODYタグに置換しています。
この変数というものは自分で作れます。 たとえば、自分で

$comento = 'コメントを表示します。';
という変数を作って、さっきの「$body」の下に

</STYLE>
<title>$title</title></head>
$body
$comento
と書いてみて、CGIを実行してみると、 ページの一番上に「コメントを表示します。」と表示されます。

ここで注意する点は、まずその文字がほかで使われてないこと。 「$comento」という変数を使うなら、検索をして使われてないことを確認しましょう。
もう一つは、CGIプログラムは上から下へ処理されるので、 実際に置き換える場所より下に定義しても正しく処理してくれません。
大抵のCGIは一番上に変数がまとめて定義されてて、「カスタマイズはここをいじってね」 という風に書かれていると思いますので、そこにいっしょにならべておけば大丈夫だと思います。

基本的に変数はカスタマイズを楽にするための物なので、 覚えなくても問題無いといえばそれまでですけど(^^; (自分で作ったCGIならいいのですが、他人が作った物で変数を使ってないと、改造が面倒になりますが。 わかりやすいCGIにするには変数を定義してやるのがベターでしょう。)

これをうまく使うのでしたら、たとえば、


$modoru1 = '<a href="../index.html">インデックスへ</a>';
$modoru2 = '<a href="../top.html">トップページへ</a>';
$modoru3 = '<a href="../main.html">メインページへ</a>';
としてやって、任意の場所に「$modoru1」などとしてやると簡単にリンクを貼れて、 たとえ飛ばすページが変わっても、すぐに変更できるという風な使い方もあります。


わかってるとは思いますが、CGIの改造は個々の責任においてやってください。
なにかがあって、私に責任を追及されても困りますから。

表紙に行く