書籍詳細(今日からつかえるPHP4サンプル集)

今日からつかえるPHP4サンプル集 書影

ISBN: 4-7980-0247-X

今日からつかえるPHP4サンプル集

サポート終了
著者山田祥寛
出版社秀和システム
価格2,800円(税別)
判型B5変判・2色
ページ数500ページ
付属CD-ROM 1枚
発売日2002年1月30日
シリーズ 今日からつかえるサンプル集
対象レベル中級

改訂版が刊行されています。詳細はこちらをご覧ください。

初心者向けPHPサンプル集

添付CD-ROMですぐに試せる豊富なサンプル群を提供します。
組み込み関数を活用した基本的なテクニックから追加モジュールによる拡張関数の活用、データベース連携によるアプリケーション構築まで充実のサンプル集。
今日からつかえるPHP4サンプル集 ロゴ

更新履歴

  • FAQ情報:2003年11月20日 更新
  • 正誤訂正:2003年3月6日 更新

目次

  • 第1章 イントロダクション
  • 1-01 PHPが今、注目されている理由
  • 1-02 PHPの基本知識
  • 1-03 各種基本設定
  • 第2章 基本から学ぼうPHP
  • 2-01 外部の検索エンジンを活用したい
  • 2-02 広告バナーをランダムに切り替えたい
  • 2-03 ソースコードを色分け表示したい
  • 2-04 新着情報をユーザに知らせたい
  • 2-05 ファイルをアップロードしたい
  • 2-06 アプリケーションで発生したエラー情報を記録したい
  • 2-07 ファイルサーバ上のドキュメントを簡単に公開したい
  • 2-08 ページ単位のアクセス記録を集計したい
  • 2-09 グラフィカルアクセスカウンタを設置したい
  • 2-10 XML文書をCSVファイルに変換したい
  • 第3章 追加モジュールでレベルアップPHP
  • 3-01 動的なページを個々に記録したい
  • 3-02 簡易なメモ帳システムを構築したい
  • 3-03 伝票をサーバ側で印刷したい(Windows Only)
  • 3-04 PDF文書を動的に生成したい
  • 3-05 メール送信フォームを構築したい
  • 3-06 ブラウザ上からメールボックスにアクセスしたい
  • 3-07 Namazuで全文検索を構築したい
  • 3-08 エラーメッセージを一元的に管理したい
  • 3-09 数値データから動的にグラフを生成したい
  • 3-10 テンプレートで新着情報の運用を効率化したい
  • 3-11 リンク情報を一元的に管理したい
  • 3-12 XML+XSLTでマルチデバイス対応のページを作成したい
  • 第4章 データベースでカンタン高度なPHP
  • 4-01 データベースの内容をHTML化したい
  • 4-02 テーブルの定義情報を閲覧したい
  • 4-03 データベースの内容をダウンロードしたい
  • 4-04 データベースに大量データを一括アップロードしたい
  • 4-05 テーブルの内容をXMLファイルとして出力したい
  • 4-06 ADOを使ってデータベースにアクセスしたい(Windows Only)
  • 4-07 MySQL用GUIクライアントを作成したい
  • 第5章 いよいよ挑戦!システム構築PHP
  • 5-01 グループスケジュール管理〜概要
  • 5-02 グループスケジュール管理(1)〜ログイン〜
  • 5-03 グループスケジュール管理(2)〜今月のカレンダー〜
  • 5-04 グループスケジュール管理(3)〜日ごとのスケジュール確認〜
  • 5-05 グループスケジュール管理(4)〜グループ内メンバのスケジュール検索〜
  • 5-06 電子商店街〜概要〜
  • 5-07 電子商店街(1)〜メインメニュー〜
  • 5-08 電子商店街(2)〜品物をカゴに入れる〜
  • 5-09 電子商店街(3)〜精算場〜
  • 5-10 検索エンジン〜概要〜
  • 5-11 検索エンジン(1)〜新規サイト登録〜
  • 5-12 検索エンジン(2)〜カテゴリ検索〜
  • 5-13 検索エンジン(3)〜キーワード検索〜
  • 5-14 検索エンジン(4)〜自分だけのカスタマイズページ〜
  • 5-15 資産管理システム〜概要〜
  • 5-16 資産管理システム(1)〜ログイン〜
  • 5-17 資産管理システム(2)〜新規資産登録〜
  • 5-18 資産管理システム(3)〜既存資産更新・削除〜
  • 5-19 資産管理システム(4)〜資産検索〜
  • 5-20 資産管理システム(5)〜ユーザ管理〜
  • 5-21 資産管理システム(6)〜ログアウト〜
  • 5-22 スレッド式掲示板〜概要〜
  • 5-23 スレッド式掲示板(1)〜新規投稿〜
  • 5-24 スレッド式掲示板(2)〜個別記事の表示と返信〜
  • 5-25 スレッド式掲示板(3)〜記事の削除〜
  • 5-26 スレッド式掲示板(4)〜掲示板の管理〜
  • 5-27 スレッド式掲示板(5)〜記事の一覧表示と検索〜
  • Appendix 簡易リファレンス
  • Appendix A PHPリファレンス 基本構文編
  • Appendix B PHPリファレンス 変数操作関数編
  • Appendix C PHPリファレンス 変数・関数・クラス操作関数編
  • Appendix D PHPリファレンス ファイルシステム関数編
  • Appendix E PHPリファレンス ネットワーク関数編
  • Appendix F PHPリファレンス データベース関数編
  • Appendix G PHPリファレンス ドキュメント関数編
  • Appendix H PHPリファレンス その他の関数編
  • Appendix I PHPリファレンス 設定ファイル編
  • Appendix J MySQLリファレンス
  • Appendix K PHP関連情報
  • 索引
  • コラム目次

正誤表

該当頁 該当箇所 修正刷
訂正箇所 訂正事項 更新日
p.52 構成ファイル new.php、record.phpの配置位置 -
/doc 配下 /cookie 配下 2002/12/26
p.94 コラム バイナリ版MySQLのインストール方法(Red Hat Linux版) 2刷
Apacheのインストールに必要なRPMパッケージは…」 MySQLのインストールに必要なRPMパッケージは…」

また、RPMパッケージ「MySQL-bench」は入れるとエラーが発生し、手順が繁雑
になるので削除してください。  
2001/02/13
p.94 Column バイナリ版MySQLのインストール方法(Red Hut Linux版) 2刷
MuSQLインストール用の~ MySQLインストール用の~ 2001/02/19
p.110 7行目後半~ 2刷
sendmail-8.12.1/obj.Linux.2.4.2-2.I686/sendmail/ sendmail-8.12.1/obj.Linux.2.4.7-10.I686/sendmail/ 2001/02/20
p.238 Column PHPにおける静的モジュールの組みこみ方法 スクリプト8行目 2刷
--with-gd=/usr/local ¥ --with-gd=/usr ¥  2001/02/13
p.293 admin.php スクリプト3行目 -
Aministrator Administrator  2002/06/27
p.305 Appendix -
- 正誤表は以下のURLから
http://member.nifty.ne.jp/Y-Yamada/php/errata.htm
2003/03/06
p.315 class用例 -
function test(){
   $x=1;
   $y=1;
   }  // コンストラクタを定義します
function test(){
     $this-<x=1;
     $this-<y=1;
   }  // コンストラクタを定義します
2002/10/15
p.383 header -
header("Content-Type: text/html;charset:euc-jp"); header("Content-Type: text/html;charset=euc-jp");   2002/09/24

FAQ

以下のサイトがお役に立つかもしれません。
参考になさってみてください。
http://www.bitlink.co.jp/server/win_mysql.htm

更新日: 2003.11.20

RedHatにCコンパイラ関係のモジュールがインストールされていないようです。
以下のURLを参考になさってみてください。
 http://www.kt.rim.or.jp/~nozawat/gcc.html

更新日: 2003.07.27

以下の点を変更(確認)してみて下さい。

1.php4ts.dllの格納場所
ダウンロードしたzipファイルを「c:\php」に展開します。展開されたフォルダ直下に格納されている「php4ts.dll」、及び、「c:\php\dlls」内の各DLLファイルをシステムフォルダにコピーします(WindowsXPでは「c:\windows\system32」、Windows2000/NTでは「c:\winnt\system32」、WindowsME/9xでは「c:\windows\system」)。

2.php.iniの位置
「c:\php」フォルダ直下にある「php,ini-dist」を「php,ini」にリネームした上で、Windowsフォルダに移動します
  (Windows2000/NTでは「c:\winnt」、WindowsXP/Me/9xでは「c:\windows」) 。

3.register_globalsパラメータの設定
PHP4.2.x以上の環境では、セキュリティ上register_globalsパラメータがoffになっています。本書のサンプルはonの状態でないと動かないものがありますので注意してく ださい。尚、セキュリティ上onの状態は推奨されていないので、実際はスーパーグロ ーバル変数$_POST、$_GETなどにスクリプトを置き換えてみてください。

更新日: 2002.09.19

PHP4.2.0の場合、P.34③の設定ファイルphp.iniをエディタで開き、register_global=offをregister_global=onにして下さい。

更新日: 2002.04.26

現時点では、PHP-4.1.2にすると拡張モジュール化できます。
更に、P.136 「(5)PHP用に拡張モジュール化する」の部分を以下のように変更します。
$ cd PHP_TOP_DIR/ext/gd
ここで、サンプルではlibjpegとlibpng以外使用しないので、config.m4に記述されている「Various checks for GD features」のPHP_GD_JPEG、PHP_GD_PNG以外 を全てコメントアウトします。
$ phpize
$ ./configure
$ make
$ su
$ make EXTENSION_DIR=/usr/local/lib/php/extensions install
PHP_TOP_DIRはPHPが解凍されたディレクトリに応じて変更します。これにより動的モジュールgd.soが /usr/local/lib/php/extensions にインストールされます。

更新日: 2002.03.16

P.34 「(4)Apacheの設定ファイル httpd.confを設定する」の部分で、Windows版Apache 1.3.22では、デフォルトの配布ファイルhttpd.conf-dist-winにClearModuleList ディレクティヴが含まれています。これを使用する時は、ファイル内に「AddModule mod_php4.c」という一文を追記してください。そうしないと、PHPがApacheのモジュールとして登録されません。

更新日: 2002.03.15

方法として2つ考えられます。
1:SRPMパッケージで、mbstringを有効にするオプションをつけてrebuildする
2:ソースを使ってmbstring.soモジュールを作成する

ここでは後者について説明します。
動的モジュールを作成するには、以下の環境が必要です。
autoconf-2.13
automake-1.4
libtool-1.3.5
m4-1.4

以下の手順は全てrootで行います。

1)php-develをインストールする
 お使いのphp本体のバージョンに合わせたphp-develのrpmパッケージをインストールしてください。

2)php.iniを編集する
 extension_dir = "/usr/lib/php/ext"
 extension=mbstring.so  を追加します。ここでは拡張モジュールを格納するためのディレクトリを新規作成した/usr/lib/php/extとしていますが、指定は自由です。

3)ソースを入手し、展開する
 ソースはphp-4.1.1tar.gzを用います。

4)PHP用拡張モジュールの作成
 php-4.1.1/ext/mbstring で
 # /usr/bin/phpize
 # ./configure
 # make
 # make EXTENSION_DIR=/usr/lib/php/ext install

注)使用したphp-develのrpmパッケージによっては、 phpizeのパスが違うこともあるかもしれません。

5)apacheを再起動する
以上でマルチバイト関数が使用できるようになります。当方の環境では動作確認しておりますが、完全動作を保証するものではございませんので、あらかじめ御了承ください。

更新日: 2002.02.12

再起動時にMySQLが自動起動されない点に関しましては、
/etc/rc.d/init.d/mysql後半に
$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file &
という一文があると思いますが、そこに --user=root オプションを付け加えて
下さい。

更新日: 2002.02.12

PHP4.1.x対応のPDFlib/PDIは2002年2月にリリースされました。
そのため、「今日からつかえるPHP4サンプル集」初版では、PHP4.1.x対応PDFLib
のセットアップ方法については割愛されています。
ここでは、PHP4.1.1環境を前提に、PDFLibの設定方法について、補足するものです。

本項で用いているPDF関数は、拡張関数です。サンプル実行に際しては、事前に拡張モジュールPDFlib/PDIをインストールしておく必要があります。
最新ソースコードは以下のURLから入手することができます。拡張モジュールは日々頻繁にバージョンアップが行われていますので、以下サイトで提供されている最新のモジュールをダウンロードのうえ、使用されることをお勧めします。
http://www.pdflib.com/pdflib/download/index.html

【Windowsの場合】
[1]上記のURLよりダウンロードしたモジュールpdflib-4.0.2-Windows.zipを適当なフォルダに格納します。pdflib-4.0.2-Windowsフォルダ配下に各種ファイルが展開されます。その中のbind/php/php4.1.xフォルダ内のphp_pdf.dllを/php/extensions(/phpはPHPを展開したフォルダとします)内にコピーします。
[2]php.iniを編集するphp.ini内に以下の記述を追記し、DLL呼び出しを有効にします。 extension=php_pdf.dll その際、Apacheサーバを再スタートするのを忘れないようにしてください。

【Linuxの場合】
[1]上記のURLよりダウンロードしたモジュールpdflib-4.0.2-Linux.tar.gzを適当なフォルダに格納します。pdflib-4.0.2-Linuxフォルダ配下に各種ファイルが展開されます。その中のbind/php/php-4.1.0ディレクトリ内のlibpdf_php.soを/usr/local/lib/php/extensions/にコピーします。
[2]php.iniを編集するphp.ini内に以下の記述を追記し、拡張モジュール呼び出しを有効にします。 extension=libpdf_php.so その際、Apacheサーバを再スタートするのを忘れないようにしてください。

更新日: 2002.02.03

books.cssが存在しないため、NNではエラーが発生するようです。ダミーのbooks.cssを用意いただくか、.xslファイル内の<link>タグ を削除することで正常動作するかと思います。

更新日: 2002.04.01

お問い合わせ

書籍に関するご質問や誤りのご報告、ご意見・ご感想などをお寄せください。

Powered by メールフォーム 『オレンジフォーム』