

参考書「問題」で質問があります。
問 題
次のような(添付画像参照)「100個のラジオボタンから選択して年齢データ
を送信するフォーム」(radio.php)と、それを「受信して、年齢を含むメッセ
ージを表示するPHPスクリプト」(radio_uke.php)を作成してください。
以上ですが以下が問題の回答のPHPプログラムです。
そこで質問します。
送信側フォームのPHP「radio.php」です。
その中に「ブロックレベル要素である「div」で質問がします。
質問
print "<div>"; ですが なくても まったくプログラムの機能には影響は
ないのですが print "<div>";~print "</div>までブロック範囲内の
その中に「文字列」 があれば 文字列を表示しなさいとの意味だと思います。
それが正しければ、ブロック内に「print "<input type='radio'…」
また 「print」が出てきます。 なんで 最初にprint "<div>";
と宣言しているにもかかわらず、「print "<input type='radio'…」
と また print で宣言させないと機能しないのでしょうか!?
よろしくお願いいたします。
ファイル名「radio.php」
----------------
<?php
$i=1;
$c=1;
print "<div>";
while($i<=100){
print "<input type='radio' name='r' value='$i'>$i ";
if($c==10){
print "</div><div>";
$c=0;
}
$i++;
$c++;
}
?>
<input type="submit" value="送信">
</div>
</form>
--------------
受信側のPHPスクリプト radio_uke.php です。
--------------
<?php
print "あなたの年齢は".$_POST["r"]."歳なのですね";
?>
送信側ですが

No.2ベストアンサー
- 回答日時:
>print "<div>";~print "</div>までブロック範囲内の
>その中に「文字列」 があれば 文字列を表示しなさいとの意味だと思います。
違うとおもいますけど・・
print "~";
は単に、PHPスクリプトが "~" をHTTPに出力するだけです。
HTTPは~が<div>であれば、ブロック開始の印とした処理を開始し
</div>であれば、ブロック終了の印としたブロック後始末処理をするわけです。
>なくても まったくプログラムの機能には影響はない
のは、ブロックの処理の有無が表示に影響しないというだけで、処理内容(プログラムの機能)は明らかに違いますよね。
ご回答くださいましてありがとうございす。
そうですね このプログラムにはHTMLタグがないですね!
「やさしいPHP第3段版」の参考書にはちゃんとHTMLは
ありますね!
しかし現在使用している
「基礎からのMySQL第3版」HTMLは省略しています。
と書いてあるので、ついうっかり HTMLタグ省いて、試していまが
ちゃんと動いていますね!?
なぜ 動くか理由は分かりませんが一個人の意見として
「PHP側もしくはブラウザがエラーを自動で修復しているから」
だと 勝手に思っています。
私の手持ちの参考書には<div>はCSSにしか出てこないタグ
でした。ただ単に「ブロック要素」のみの意味しかない
実戦経験のない私なので、他詳いことは分かりません!
今後とも宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
終端識別子 とは?
-
phpのheader("Location:#pos")...
-
*.php、*.php3、*.phtmlの違い
-
phpのextension_dirを複数指定...
-
PHP PDOライブラリが読み込まれ...
-
phpでメール送信できません 原...
-
header(Location:~)で$_SESS...
-
<A href ~ と一緒に値を渡すには
-
さくらインターネットでメール...
-
【PHP】tmp_nameの命名規約につ...
-
php4とphp5での数値の取り扱い...
-
テレメールとは?
-
PHPでメールを受信するには?
-
データ送信をボタンを押さずに...
-
PEAR(Image_QRCode)のエラー
-
Apache 2.4でphp-5.3を使いたい...
-
セッションについての設定なの...
-
require_once()でファイルが読...
-
HTML文をなんとか隠蔽したいの...
-
再度、xamppにおけるjpgraphの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php文字列中のシングルクオート...
-
【比較演算子】偶数・奇数識別...
-
PHPで4桁の文字コード(SHIFTJI...
-
if ('0.0'=='0'){ の0.0とは何
-
include/require文へのバリデー...
-
PHPのGETとPOSTの処理を学習中...
-
hexdec(uniqid())でE+15が付く
-
PHPにおいて、配列データをMySQ...
-
拡張子PHP3のスクリプトを...
-
phpのheader("Location:#pos")...
-
PHPのif文でその処理を途中で抜...
-
FTPコマンドでディレクトリごと...
-
CFileDialogの最初のディレクト...
-
.phpと.incファイルの違いはな...
-
Subversionのリポジトリの削除
-
バッチを用いたフォルダの自動移動
-
onedrive にexcelファイルをア...
-
[php初心者]サイトを見てデータ...
-
makefile でファイルをコピーす...
-
【file_exists】ファイルが存在...
おすすめ情報
どうもすみません!
参考書の問題回答の、ファイル名「radio.php」ですが
以上は 間違いで 以下が正解でした。
以下の冒頭の<form~始まる 2行を追加しただけですが
転機するのを忘れていました。
ファイル名「radio.php」
---
<form method="POST" action="radio_uke.php">
あなたの年齢を選択して、送信ボタンをクリックしてください。<br>
<?php
$i=1;
$c=1;
while($i<=100){
print "<input type='radio' name='r' value='$i'>$i ";
if($c==10){
print "</div><div>";
$c=0;
}
$i++;
$c++;
}
?>
<input type="submit" value="送信">
</div>
</form>