Perl/CGI辞典(坂下 夕里)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. Perl/CGI辞典

Perl/CGI辞典


形式:
書籍
発売日:
ISBN:
9784798103648
定価:
2,090(本体1,900円+税10%)
仕様:
A5・634ページ

読んで納得!持ってて安心!ホームページ初心者でもできる!

掲示板・日記・カウンター・アクセス解析・アンケートなど、そのままではダサダサのフリーCGIを自分好みにアレンジ!

◎本書がPerl/CGI初心者にもわかりやすい7つの理由
1.初めての人が迷いやすいレンタルサーバの設定の仕方を丁寧に図解。
2.自分のPCにCGIのテスト環境(PerlとApache)を作る方法も丁寧に図解。
3.他書にはないエラーとデバッグの仕方を順序立てて解説。
4.よく使われるわりに情報が少ない正規表現をくわしく例解。
5.すぐに使えるサンプルで、プログラムの作り方を徹底解説。
6.Perlの関数を重要度別に★★★~★で評価。
7.関数リファレンスの例文が多く、使う際の注意が細かく説明されている。

第1章 CGIとは何か?

1 CGIででできること
2 CGIのしくみを知る
3 SSIの仕組みを知る

第2章 レンタルサーバでのCGI設定

1 CGI設置の流れ
2 レンタルサーバでのCGI環境を準備する
3 CGIファイルをどこに置くか
4 Perlとsendmailのパス、拡張子を確認する
5 CGIスクリプトをASCIIモードで転送する
6 ファイルの権限(パーミッション)とは何か?
7 権限を数値で表現する方法
8 権限の変更のしかた
9 CGI、SSI設置確認

第3章 自分のPCにCGIの動作環境を作る

1 なぜPCにCGIの動作環境が必要か?
2 Perlをインストールする
3 Perlのインストールを確認する
4 Apacheをインストールする
5 Apacheの基本設定
6 HTMLファイルが見れるかApacheの動作テストをする
7 DocumentRootを整理する
8 CGI、SSI動作用にApacheを設定する

第4章 CGIのエラーとデバッグ

1 いろいろなエラーコード
2 Error Code500が出たらまず確認すること
3 コマンドプロンプトから文法上の間違いをチェックする
4 CGIを使って文法上の間違いをチェックする
5 デバッグのしかた
6 Perlデバッガを使う

第5章 CGIの作法

1 CGIの出力
2 引数(フォームとデコード)
3 環境変数

第6章 Perl文法

Perlを学ぶ前に
1 プログラムの基礎
2 Perlの実行方法
3 CGIとPerlの関係
Perl文法の基礎
4 文・宣言など
変数・定数
5 Perlの変数の特徴
6 変数で数値を使う方法
7 変数で文字を使う方法
リスト(配列)・ハッシュ
8 リスト(配列)
9 ハッシュ
関係演算子と比較演算子
10 数値の演算子
11 文字列の演算子
12 否定
正規表現
13 正規表現とは何か?
14 基本的なマッチングパターン
15 正規表現に使ういろいろなパターン
制御処理
16 条件式と制御
条件分岐
17 if文(1)
18 if-else文
19 if-elseif-else文
20 if文(2)
21 unless-else文
繰り返し
22 while文
23 while-continue文
24 do~while文
25 ~while~文
26 until文
27 do~until文
28 ~until~文
29 for
30 forを使ったリストに対する繰り返し
31 foreach(1)
32 foreach(2)
ループ制御
33 goto label
34 last
35 next
36 redo
条件の判定
37 &&
38 ||
条件付き実行
39 &&
40 ||
41 ?-:
その他の繰り返し
42 x
43 ..
サブルーチン
44 サブルーチンの基本
45 引数と戻り値
46 プロトタイプ
47 呼び出し方のいろいろ
48 my変数とlocal変数
パッケージとモジュール
49 他のファイルのプログラムを読み込んで使う
50 パッケージ
51 モジュール
52 ライブラリ・モジュールの指定
ファイル操作
53 ファイル操作
入出力
54 標準入力・標準出力
55 ファイル入出力
56 複数行の出力

第7章 実用サンプルで学ぶCGIスクリプトの読み方/書き方

読み書きの基礎
1 長いCGI/Perlコード解読のコツ
CGIでよく利用するモジュール
2 引数と引数デコードライブラリ
3 日本語扱いライブラリ
4 日本語の文字化けを防ぐ処理
5 Cookie(クッキー)の処理
6 CGIのセキュリティ
CGIサンプル
0 CGIサンプル
1 普通のアクセスカウンター
2 flock関数を使わないカウンター
3 連続カウントを防止するカウンター
4 通常のカウンター+昨日と今日のカウント数表示(SSI方式)
5 日付・時刻表示(CGI方式)
6 日付・時刻表示(SSI方式)
7 カウントダウン
8 アクセスログ
9 ユーザ情報表示(SSI方式)
10 アンケートフォーム
11 投票フォーム
12 フォームを使ったパスワード
13 普通の掲示板
14 スレッド形式掲示板
15 フォームからのメール送信
16 チャット
17 カレンダー
18 日記

第8章 Perl関数リファレンス

算術
1 int
2 not
3 rand
4 srand
5 abs
6 exp
7 log
8 sqrt
9 sin
10 cos
11 atan2
文字列操作
1 length
2 chop
3 chomp
4 index
5 rindex
6 substr
7 lc
8 lcfirst
9 uc
10 ucfirst
11 crypt
12 quotemeta
13 q
リスト
1 each
2 keys
3 values
4 grep
5 reverse
6 sort
7 delete
8 join
9 split
10 splice
11 pop
12 push
13 shift
14 unshift
15 exists
16 map
17 scalar
18 ref
変換
1 pack
2 unpack
3 chr
4 ord
5 oct
6 hex
7 vec
検索・置換
1 s
2 tr
3 pos
入出力
1 open
2 close
3 flock
4 binmode
5 read
6 write
7 seek
8 getc
9 print
10 sprintf
11 printf
12 eof
13 tell
14 select
15 readline
ファイル・ディレクトリ操作
1 link
2 unlink
3 rename
4 mkdir
5 rmdir
6 opendir
7 closedir
8 readdir
9 telldir
10 seekdir
11 rewinddir
12 stat, lstat
13 chmod
14 chown
15 chdir
16 utime
17 readlink
18 symlink
19 truncate
日付・時刻
1 time
2 gmtime
3 localtime
システム
1 system
2 `プログラム`
3 exec
4 sleep
5 alarm
6 fork
7 wait
8 warn
9 times
10 waitpid
11 getppid
12 getpgrp
13 setpgrp
14 getlogin
15 getpwnam
16 getpwuid
17 getpwent
18 setpwent
19 endpwent
20 getgrnam
21 getgrgid
22 getgrent
23 setgrent
24 endgrent
制御
1 eval
2 sub
3 do
4 goto
5 die
6 exit
7 return
8 defined
9 caller
10 wantarray
その他
1 package
2 require
3 use
4 local
5 my
6 reset
7 undef
8 umask
ネットワーク
1 gethotobyaddr
2 gethostbyname
3 socket
4 bind
5 listen
6 accept
7 connect
8 shutdown
9 send
10 recv
11 getsockname
12 getpeername
13 getsockopt
14 setsockopt
15 socketpair
データベースアクセス
1 dbmopen
2 dbmclose

付属データはこちら

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

追加情報はありません。
この商品の「よくある質問」はありません。

現在表示されている正誤表の対象書籍

書籍の種類:紙書籍

書籍の刷数:全刷


※重版をした際に、内容が修正されている場合があります。「刷数の確認方法(例)」の図を参考に、お手元の書籍の刷数をご確認ください。下の「書籍の刷数」の欄で刷数を選択すると、お持ちの書籍の刷数に合わせて、正誤情報を絞り込むことができます。

書籍によっては表記が異なる場合がございます


本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

 書籍の刷数で正誤情報を絞り込みたい場合は選択してください。

 書籍の種類:

最終更新日:2005年04月11日
ページ数 内容 発生刷 書籍修正刷 電子書籍訂正 登録日
10
下の図
Content-taype:text/html
Content-type:text/html

2箇所あるのでどちらも修正
1刷 3刷 2004.10.06
11
A HREF="new_html
A HREF="new.html

2箇所あるのでどちらも修正
1刷 3刷 2005.04.11
11
4行目
HTMLの中で部分的にCGIを使うことが
HTMLの中で部分的にCGIと同様の機能を使うことが
1刷 3刷 2004.10.06
11
あなたは<!--#exec cmd="counu.pl"-->
あなたは<!--#exec cmd="count.pl"-->
1刷 3刷 2004.10.06
24
下の図
Content-taype:text/html
Content-type:text/html
1刷 3刷 2004.10.06
25
open(SENDMAIL"|/usr/bin/sendmail-t") close(SENDMAIL): tesu@bbb.co.jp
open(SENDMAIL, "|/usr/bin/sendmail -t") close(SENDMAIL) test@bbb.co.jp
1刷 3刷 2004.10.06
28
図 上のBinary転送の場合
print<<"EOM":[CR][LF] [CR][LF]
print<<"EOM"[CR][LF] Content-type:text/html[CR][LF] [CR][LF]
1刷 3刷 2004.10.06
28
図 下のASCIIモード転送の場合
print<<"EOM":[LF]
print<<"EOM"[LF]
1刷 3刷 2004.10.06
35
open(FILE, "file"): close(FILE):
open(FILE, "file") close(FILE)
1刷 3刷 2004.10.06
42
図 左下
#!:\perl\bin\perl
#!C:\perl\bin\perl
1刷 3刷 2004.10.06
50
apacheダウンロードURL
http://httpd.apache.org/dist/httpd/binaries/win32/
http://archive.apache.org/dist/httpd/binaries/win32/

URL変更
1刷 3刷 2004.01.05
57
本文2行目
http://フルコンピュータ名も可
http://フルコンピュータ名/も可
1刷 3刷 2005.04.11
85
Content-taype:text/html
Content-type:text/html

2箇所あるのでどちらも修正
1刷 3刷 2004.10.06
95
下の表 3つめ
GATEWAY_INTERFACE WWWサーバの使用しているCGIのバージョン。
GATEWAY_INTERFACE WWWサーバの使用しているCGIのバージョン。 を全て削除(同じ物が一番下にある)
1刷 3刷 2004.10.06
150
#用意したハッシュをリストに追加
my %person = (\%data1, \%data2);
my @person = (\%data1, \%data2);
1刷 3刷 2003.12.02
160
【マッチングサンプル】の下から2行目
print "NO!"<BR>\n;
print "NG!"<BR>\n;
1刷 3刷 2003.12.03
177
一番上のタイトル
if-elseif-else文
if-elsif-else文
1刷 3刷 2004.10.06
214
下の図
プログラムコマンド文の最後の;が全て:になっている(8箇所) &amp、&gt、&lt、&quotの後も全て;が:になっている
プログラムコマンド文の最後の:は全てにする(8箇所) &amp、&gt、&lt、&quotの後も全て:はにする
1刷 3刷 2004.10.06
215
1行目
サブルーチン化するべきしないべきか
サブルーチン化するべきかしないべきか
1刷 3刷 2004.10.06
217
下の図
プログラムコマンド文の最後の;が全て:になっている(7箇所) &amp、&gt、&lt、&quotの後も全て;が:になっている 戻り値の後の 'abc&lt:efg&gt:'
プログラムコマンド文の最後の:を全てにする(7箇所) &amp、&gt、&lt、&quotの後も全て:をにする 'abc&ltefg&gt'
1刷 3刷 2004.10.06
240
-u ファイルにsetuid -g ファイルがsetgid -k ファイルがstickyビットがセットされている。
-u ファイルにsetuidビットがセットされている。
-g ファイルsetgidビットがセットされている。
-k ファイルstickyビットがセットされている。
1刷 3刷 2005.04.11
250
一番上のから3行目プログラム内
EOM_LINE
END_LINE
1刷 3刷 2004.10.06
316
図の中
img.gif
image.gif
1刷 3刷 2004.02.25
317
4行目
img.gif
image.gif
1刷 3刷 2004.02.25
346
ダウンロード用サンプルファイル 13_bbs/bbs1.cgi 65行目
my $pageStr = &getPageList($count);
my $pageStr = &getPageList2($count);
1刷 3刷 2004.06.18
353
CGIの処理の流れ 1行目
ログ表示件や
ログ表示件
1刷 3刷 2004.10.06
368
16~17行目  サブジェクトに~コンバートします。
16~18行目  サブジェクトに~コンバートします。本文はJISに変換します。
1刷 4刷 2004.10.06
368
19~21行目 23~37行目
2022行目 2438行目
1刷 4刷 2004.10.06
369
mailsend.cgi
16: #サブジェクトをエンコード 17: my $enc_sub = &Base64Encode($subject); 18: 19: if($address~
16: #エンコード 17: my $enc_sub = &Base64Encode($subject); 18: &jcode'convert(*body,'jis'); 19: 20: if($address~

16行目を変更。18行目を追加、以下行数を1行ずらす。
1刷 4刷 2004.10.06
369
39~51行目 53~67行目 69~85行目
4052行目 5468行目 7086行目
1刷 4刷 2004.10.06
404
237~268行目の最初
日記のログに
日記のログ
1刷 3刷 2004.10.06
438
プログラム結果
<p> <a href="http://www.shoeisha.com/">
ehoge geh eho geh
1刷 3刷 2004.10.06
493
本文上から6行目
一度クローズされます
一度クローズされます。
1刷 3刷 2005.04.11
509
プログラム
my $v = printf("%03d\n", 9); print $v;
printf("%03d\n", 9);
1刷 3刷 2004.10.06
564
上のヘッダ内
getpwname
getgrnam
1刷 3刷 2004.10.06
597
下のスクリプト
open(FILE, "→>test.txt");
open(FILE, ">>test.txt");
1刷 3刷 2004.10.06
599
上のヘッダ内
gethostbyadr
gethostbyaddr
1刷 3刷 2004.10.06
目次
6章 分岐条件
19 if-elseif-else文
19 if-elsif-else文
1刷 3刷 2004.10.06