さ み だ れ 雑 記 | 12 | 1999年7月18日 |
Perlは楽しいの巻
今回から右上にリンクつきました。過去の雑記にも全部付けたから、常連のお客さん以外には分からないかもしれないですが、今回が初めてです。
ページ開設当初からアイデアとしてはあったんですが、なんせ、面倒。技術的には、なんということもなく、
<div align=right><font color="#3366FF"><a
href="zakki_011.html">11</a>←
→<a href="zakki_013.html">13</a></font></div> |
というのを、毎回、該当個所を書き換えていけばそれでOK。OKなんだが、忘れたりミスタイプしたり、で一番丁寧には、最新版の段階では次のリンクはないんだから、今回なら11←のとこだけで、雑記(13)を書いた段階で→13を付け加える・・・もう・・・・あ〜あ。
といいうことで、これまでのような構成になってました。(もちろんこの12回が最初にアップされた時点では13をクリックしても13はないよといわれます、あしからず。これは許して下さい。企業のサイトなら許されない仕様とも思いますが、なんせ、そこまでやったら煩雑でしかたない・・・)
(あ、ところでMacの人にも←や→の矢印が見えてますよね。シフトJISどうしだから大丈夫だとは思うんだが・・・。もし見えなかったら教えて下さい。)
で。と。
面倒な定型処理はパソコンが得意。ということで、Perlで出来ないかなあ?と思ってちょこちょこやってみたら簡単に出来ました。
うれしいっちゃ!
自分のマシンにある「ホーム」から「雑記生成」っていうリンク押すします。
雑記ウィザード
|
と、上の画面が出ます。番号のとこに12って入れて「書き込む」をクリックすると
OKzakki_012.html が生成されました。 |
って表示されます。
これで、さみだれ雑記のロゴの番号を12にして、11と13へ行くリンクをつけて、新しいzakki_012.htmlというファイル名にして保存してくれます。(^_^)V (う、絵文字を使ってしまった・・・・) あとは、本文を書いていけば出来上がり。
どうやってるかの解説といっても、まだ「Perlのお勉強(2)」(ほぼ完成)は手元にあるだけでアップしてなかったのだった。けどまあ、ずうずうしくプログラムのせちゃおかな。
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta name="GENERATOR" content="Mozilla/4.6 [ja] (Win98; I) [Netscape]"> <title>zakki wizzard</title> </head> <body text="#000000" bgcolor="#CCCCCC" link="#0000EE" vlink="#551A8B" alink="#FF0000" onLoad="document.form.number.focus()"> <font color="#990000"><font size=+3>雑記ウィザード</font></font> <p> <hr> <p><form NAME="form" ACTION="zakki_w.cgi" METHOD="post">番号:半角 <br><input TYPE="text" SIZE=10 NAME="number"> <p><input TYPE="submit" VALUE=" 書き込む "><input TYPE="reset" VALUE=" 取り消す "></form> <hr> </body> </html> |
こっちが数字入力画面のzakki_w.htmlファイル。ポイントは
<p><form NAME="form" ACTION="zakki_w.cgi"
METHOD="post">番号:半角
<br><input TYPE="text" SIZE=10 NAME="number">
<p><input TYPE="submit" VALUE=" 書き込む
"><input TYPE="reset" VALUE=" 取り消す "></form>
ってとこだけです。くわしい解説は「勉強2」で・・・。ここで、numberが12だという情報が、zakki_w.cgiに送られます。それがこれ:
#########
# 設定部分 # ↓漢字ライブラリ jcode.pl のファイル名
# 漢字ライブラリの読み込み
# 初期化
# 情報の取得
# 半角を全角に置換する
# ファイルを開く
# ファイルに出力
<td ALIGN=CENTER WIDTH="10%" BGCOLOR="#FF80FF"><font color="#FFFFFF"><font size=+3>$number_z</font></font></td> <td ALIGN=RIGHT WIDTH="30%" BGCOLOR="#408080"><font color="#FFFFFF"><font
size=+1>1999年7月18日</font></font></td>
# ファイルを閉じる
# ヘッダの送出
# 終了
#
|
はじめてPerlのプログラム見る人は複雑な感じがするかもしれませんが、単純です。わたしに能力があれば、送られてくるデータが一つしかないんだから、「サブルーチン」なんか使わず、もっとスマートにできるはずなんですが、いかんせん、そんな能力はないということで、見る人が見たら笑われるかも知れないですが、限られた知識で強引にやりました。もっと力が付いたらまた改造しようということで・・・。(実は強引に2つのファイルを1つに纏めて、どうにか動くようにはしたのだが、それを公開するのはさすがに恥ずかしい。)
# ファイルを開く
open (HTML, ">zakki_0$number.html");
の部分を「とほほのWWW入門・Perl編」見ながら、試行錯誤でやりました。これも「基本」って部分でしょうが、参考書の例はすべて「存在するファイルを呼び出す」もの。ここでは存在しないファイルを作るってんで、ま、出来るんじゃないかな?で作ったら出来ちゃった。うれしい。
ここは、ファイルを「書き込み」で開くという意味です。
変数の使い方とかは、詳しい解説は「Perlのお勉強2」(3までいるかなあ?)のアップまで待って下さい。
あれ?結局、「できたぜ」って、ただ自慢するだけで終わっちゃったなあ。こりゃ更新連絡恥ずかしくて出来ないぞう・・・・・。
ということであえて連絡しないでおこう・・・。何のこっちゃ。