基本的なところを押えてなかった。自分のPCのIISでPHPスクリプトを使う際、今になって気付いたがフォームのpostにてデータの送受信ができていなさそう。プロバイダのサーバ(Apache)では動いているのでIISセッティングの問題か。
解答:スーパーグローバルを使う。
従って、本の記述は次のように読み替える。
… name="変数名" value="値" …
…
… $変数名 …
…
↓
… name="変数名" value="値" …
…
… $_POST["変数名"] …
…
また、同様に、
<form action="<?=$PHP_SELF?>" method="post">
も
$url = $_SERVER["PHP_SELF"];
<form action="<?=$url?>" method="post">
のように見直す必要あり。