いますぐ導入!PHP+MySQLで作る最速Webシステム

サポートページ

この記事を読むのに必要な時間:およそ 0.5 分

補足情報

1.MySQLが操作しない場合の再インストール

MySQLのインストール後にエラーが発生して起動できない場合,MySQLのアンインストール→再度MySQLをインストールによって正常に動作するようになったとの報告があります。その際,以下のような操作が必要になります(これは[プログラムの追加と削除]からはC:\mysqlフォルダとmy.iniファイルを削除できないためです)。

[1]コントロールパネルの[プログラムの追加と削除]からMySQLをアンインストールする

[2]コンピュータを再起動する

[3]MySQLをインストールしたフォルダ(既定ではC:\mysql)を手動で削除する

[4]my.iniファイル(既定ではC:\WINDOWS\my.ini)を手動で削除する

[5]もう一度コンピュータを再起動する

[6]MySQLをインストールする

[7]文字コードの設定(P48)を行う

[7]の文字コードの設定を間違えると,再起動時にエラーが発生してMySQLのサービスを開始できなくなる場合があるのでご注意ください。

2.MySQLのユーザ名とパスワードについて

インストーラからMySQLをインストールした場合,通常はユーザ名とパスワードの入力を求められることはありません。ただし,インストール後にmy.iniファイルを削除(または移動)した状態でMySQL Adminツールが起動すると,最初にユーザ名とパスワードを求めるダイアログボックスが表示されます。この場合,空欄のまま[Cancell]ボタンを押せば大丈夫です。この後,C:\WINDOWSフォルダ内に新たにmy.iniファイルが作られます。

また,アンチウィルス/セキュリティソフトの設定のほか,Windows XPサービスパック2のファイヤーウォールの設定によっても,上記のダイアログボックスが表示される場合があるようです。

php_mbstring.dllについて補足

本書の発売以降,PHPは何度かバージョンアップが行われております。本書152ページでphp_mbstring.dllのインストール方法を紹介しております。

このphp_mbstring.dllは,PHPの各バージョンによって使用すべきものが異なる模様です。こちらでも確認しましたが,あるバージョンのPHP用のphp_mbstring.dllを別バージョンのPHPで使用するといったことはできません。

本書の付属CD-ROMにはPHP4.3.2が収録されております。これをインストールした場合,PHPのサイトからは「PHP4.3.2のバイナリファイル」をダウンロードする必要があります。

[1]PHPのダウンロードサイトにアクセスします。

[2]左側にある「Information about older releases …」と書かれたカコミの部分で,文末の「our releases page.」という部分をクリックします。

[3]「Unsupported Historical Releases」というタイトルのページが表示されるので,「4.3.2」という見出しの部分までスクロールダウンさせます。

[4]「Download:」の行(4行目)にある「Windows binary」という部分をクリックすると,PHP4.3.2のバイナリファイルのダウンロードが開始されます。

※手順[4]でダウンロードされるファイルは「php-4.3.2-Win32.zip」です。「Windows installer」をクリックすると,php_mbstring.dllを含まないインストーラファイル(php-4.3.2-installer.exe)がダウンロードされるので注意してください。

これでP152の手順(1)の操作が完了したことになりますので,続いてP153の(2)の操作を行ってください。

お詫びと訂正(正誤表)

本書には以下のような修正があります。当方の不手際により,ご迷惑をおかけしたことをお詫びいたします。

なお,プログラムのリストについては,CD-ROMに収録したものは正常ですので,そちらは修正しなくても動作します。

※以下の訂正は,初版第3刷(2005年1月5日発行)以降では適用されています。奥付(448ページ)をご確認ください。

P.218 表3-4-1

「datetime」は「実数」ではなく「日付/時刻」に分類されます

「char(*)」は「日付/時刻」ではなく「文字列」に分類されます

P.222 表3-4-2

「フィールド名の変更」で以下のように訂正があります。

…column fax faxnum
…column fax faxnumvarchar(13)

P.262 表3-4-65~表3-4-67

それぞれ,真中の行の「テーブルA.顧客コード」は「テーブルB.顧客コード」の誤りです。

P.280 リスト3-5-2の中央付近


 :
$body = "<TABLE border='1' cellpadding
='2' cellspacing='0'>
<tr>
<th bgcolor='#00CCCC'>ISBN</th>
<th bgcolor='#00CCCC'>タイトル</th>
<th bgcolor='#00CCCC'>価格</th>
<th bgcolor='#00CCCC'>発売日</th>
<tr>\n";
 :
 :
$body = "<TABLE border='1' cellpadding
='2' cellspacing='0'>
<tr>
<th bgcolor='#00CCCC'>ISBN</th>
<th bgcolor='#00CCCC'>タイトル</th>
<th bgcolor='#00CCCC'>価格</th>
<th bgcolor='#00CCCC'>発売日</th>
</tr> \n";

P.282 リスト3-5-3の上から7行目

:
<tr>\n";
:
</tr>\n";

P.283 リスト3-5-4の最下行

$body .= "<tr>\n";

$body .= "</tr>\n";

P.290 リスト3-5-10

・下段にはみ出ている,以下の2行もリストに含まれています。

	:
$con = mysql_close($con);
?>

P.312 リスト4-2-2の上から3行目

P.316リスト4-3-1の下から3行目,P.320リスト4-3-2の下から4行目

:
<tr>\n";
:
</tr>\n";

管理者のメールアドレスの設定について

P430の「新規投稿を管理者にメールで知らせる」で,リスト5-2-39のようにphp.iniに修正を加えた後,smp5-24reg.php(リスト5-2-40)でも以下の個所を変更してください。この変更をしないと,掲示板に新規投稿があったことを知らせるメールが管理者に届きません。

P.312 リスト4-2-2の上から3行目

P.316リスト4-3-1の下から3行目,P.320リスト4-3-2の下から4行目

//SQL文を発行します
$rst = mysql_query($sql, $con);
if ($rst) {
//成功したとき
$body = "<B>掲示板への新規投稿を完了しました。</B>";
//宛先のメールアドレスを設定します
$mailto   = "xxxx@xxxx.xxx.xxx"; <-この行

上記の行の「xxxx@xxxx.xxx.xxx」を管理者のメールアドレス(リスト5-2-39で「発信元のメールアドレス」として設定したものと同じ)に変更します。

なお,完成版のプログラムの「smp5-26reg.php」内にも同様の個所があるので,同じように変更してください。smp5-26reg.phpのファイルはCD-ROMに収録していますが,本文中にリストは掲載していません.