Windowsで学ぶCGI & Perl

[表紙]Windowsで学ぶCG

紙版発売

B5変形判/528ページ/CD1枚

定価2,838円(本体2,580円+税10%)

ISBN 4-7741-1234-8

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

双方向的なホームページを作るのに最適な技術がCGIです。本書は初めてCGIに挑戦する方でもPerlを用いて簡単にCGIの作成ができるよう解説しています。付属CD-ROMにサンプルを多数収録してありますので,本書1冊ですぐにCGIに挑戦することができます。

こんな方におすすめ

  • Windows上でCGIプログラミングを学びたい方
  • ホームページで利用したいCGIを作りたい方

目次

Chapter00 CGIの仕組み

  • 1.HTMLファイルがなぜブラウザに表示されるの?
  • 2.CGIって何?
    • 1.1.CGIってどんなときに必要なの?
    • 1.2.CGIの仕組み
  • 3.CGIとPerl

Chapter01 パソコン上でCGIを動かしてみよう

  • 1.Perlのインストール
    • 1.1.ActivePerlのインストール
    • 1.2.Perlの動作確認
  • 2.WWWサーバのインストール
    • 2.1.AN HTTPのインストール
    • 2.2.AN HTTPの動作確認
    • 2.3.AN HTTPの設定(ユーザディレクトリの設定)
    • 2.4.AN HTTPの設定(その他)
  • 3.CGIを動かしてみよう

Chapter02 インターネット上でCGIを動かしてみよう

  • 1.あなたのサイトの情報を確認する
  • 2.ファイル転送プログラムのインストール
    • 2.1.FFFTPのインストール
    • 2.2.サイト情報の登録
    • 2.3.FFFTPの使い方(サイトへの接続)
    • 2.4.FFFTPの使い方(ファイルのアップロード・ダウンロード)
  • 3.telnetプログラムのインストール
    • 3.1.TeraTermのインストール
    • 3.2.TeraTermの使い方(サイトへの接続)
    • 3.3.サイト名の登録
  • 4.UNIX・Linuxの使い方
    • 4.1.ディレクトリ
    • 4.2.パーミッション(属性)
    • 4.3.コマンド

Chapter03 CGIを作ってみよう

  • 1.HelloWorld!プログラム1〜CGIを直接起動する
    • 1.1.Perlを起動してみる
    • 1.2.プログラムの解説
    • 1.3.CGIとして起動するには?
  • 2.HelloWorld!プログラム2〜HTMLからCGIを直接起動する
    • 2.1.HTMLのフォームタグ(FORM)にて起動する
    • 2.2.HTMLのアンカータグ(A)にて起動する
    • 2.3.HTMLのフレームタグ(FRAME)にて起動する
  • 3.HelloWorld!プログラム3〜CGIの出力結果をHTMLに埋め込む(SSI)
    • 3.1.HTMLの書き方
    • 3.2.CGIプログラムの書き方
    • 3.3.SSIの仕組み
    • 3.4.SSIを実行してみよう
  • 4.日時を取得するプログラム
    • 4.1.日時を取得するプログラム
    • 4.2.サブルーチン
  • 5.ファイルを読み書きするプログラム
    • 5.1.プログラムで読みこむファイルを作る
    • 5.2.ファイルを読んでMS-DOSコンソールに表示する
    • 5.3.ファイルを読んで別のファイルに格納する(コピー)
    • 5.4.ファイルの内容を書き換える
  • 6.ファイルをロックするプログラム
    • 6.1.ロックの仕組み
    • 6.2.ロック+アンロックを行うプログラム
    • 6.3.lock.plの改善
    • 6.4.ロック用サブルーチンを作る
  • 7.ヒアドキュメントを使ったプログラム
  • 8.データの受け渡しをするプログラム
    • 8.1.ブラウザから送信されるデータを受け取る
    • 8.2.入力された値のみを取り出す
    • 8.3.URLエンコーディング
    • 8.4.POSTとGET
  • 9.文字コードを変換する
    • 9.1.文字コード:ASCIIコードって?
    • 9.2.文字コード:JISコードって?
    • 9.3.文字コード:シフトJISって?
    • 9.4.CGIプログラムはどの文字コードで作ったらいいか?
  • 10.ブラウザのキャッシュを防ぐ

Chapter04 アクセスカウンタを作ってみよう

  • 1.アクセスカウンタを作ってみよう(SSI方式)
    • 1.1.カウンタ画像を準備する
    • 1.2.SSI対応のHTMLを作る
    • 1.3.カウンタファイルを準備する
    • 1.4.カウンタプログラムを作る
    • 1.5.カウンタプログラムが動作しない!
    • 1.6.カウンタプログラム(リロードによるカウントアップを防ぐ)
    • 1.7.カウンタプログラム(アクセスファイルのデータを消す)
  • 2.日々のアクセス件数を表示する(SSI方式)
    • 2.1.カウンタプログラムを修正する
    • 2.2.日々のアクセス数を表示する
  • 3.昨日・今日のカウンタを表示する(SSI方式)
    • 3.1.昨日・今日用の画像ファイルを準備する
    • 3.2.CGIプログラムを修正する
  • 4.アクセスカウンタを作ってみよう(CGI方式)
    • 4.1.CGIプログラムをIMGタグから起動する
    • 4.2.複数の画像を結合する
    • 4.3.画像ファイルを準備する
    • 4.4.HTMLを準備する
    • 4.5.カウンタファイルを準備する
    • 4.6.カウンタプログラムを作る
    • 4.7.カウンタプログラム(リロードによるカウントアップを防ぐ)
    • 4.8.カウンタプログラム(アクセスファイルのデータを消す)
  • 5.日々のアクセス件数を表示する(CGI方式)
    • 5.1.カウンタプログラムを修正する
    • 5.2.日々のアクセス数を表示する
  • 6.昨日・今日のカウンタを表示する(CGI方式)
    • 6.1.昨日・今日用の画像ファイルを準備する
    • 6.2.HTMLファイルを修正する
    • 6.3.昨日・今日の件数を表示するCGIプログラムを作る
  • 7.表示のカスタマイズ
    • 7.1.グラフで表示するには?
    • 7.2.日々のアクセス数を表示する
    • 7.3.月別のアクセス数を表示する
    • 7.4.時間別のアクセス数を表示する

Chapter05 掲示板を作ってみよう

  • 1.最小機能の掲示板を作ってみよう
    • 1.1.掲示板プログラムの動作
    • 1.2.掲示板プログラムの構成
    • 1.3.掲示板プログラムの説明
    • 1.4.掲示板プログラムの設置
  • 2.掲示板の機能をアップする
    • 2.1.入力された改行コードを<BR>に置換する[board02.cgi]
    • 2.2.入力されたタグを無効にする[board03.cgi]
    • 2.3.許可したタグのみを有効にする[board04.cgi]
    • 2.4.タブルクォーテーションの入力漏れを補正する[board05.cgi]
    • 2.5.履歴エリアを整形する[board06.cgi]
    • 2.6.1つの画面に表示する履歴数を設定する[board07.cgi]
    • 2.7.投稿内容に返信する[board08.cgi]
    • 2.8.クッキーを使用する[board09.cgi]
    • 2.9.パスワードを暗号化する[board10.cgi]
    • 2.10.投稿の修正・削除を行う[board11.cgi]
    • 2.11.サーバに保管するデータの件数を制限する[board12.cgi]
    • 2.12.二重投稿を防止する[board13.cgi]
  • 3.掲示板を自分の好みに変えてみよう
  • 3.a.レイアウトを変えてみる[board14.cgi]
  • 3.b.投稿者のイメージを表示する[board15.cgi]
    • 3.b.1.メニューの表示
    • 3.b.2.入力エリアの作成
    • 3.b.3.メニューに合わせて画像を切り替える
    • 3.b.4.投稿者のイメージを受けとる
    • 3.b.5.投稿者のイメージをログファイルに書き込む
    • 3.b.6履歴エリアに投稿者のイメージを表示する
  • 3.c.投稿の色を変えて表示する[board16.cgi]
    • 3.c.1.ラジオボタンの表示
    • 3.c.2.入力エリアの作成
    • 3.c.3.指定した色を受け取る
    • 3.c.4.指定された色をログファイルに書き込む
  • 3.d.ツリー構造で表示する[board17.cgi]
    • 3.d.1.履歴の表示の仕方
    • 3.d.2.どうやってツリー形式で表示するの?
    • 3.d.3.データの出力の仕方

Appendix

  • A.Perl入門
  • B.JavaScript入門
  • C.CSS入門
  • D.トラブルシューティング
  • E.プログラムの設置方法
  • F.改造時の留意点
  • G.解凍ツールの使い方