PHPの入力フォームで質問があります。

以下の処理を実行すると、入力フォームには"ichiro"しか出力されません。
$usernameの中に半角スペースを全角スペースにすると"ichiro tanaka"と出力されます。
もちろん、"ichiro tanaka"と出力して欲しいのですが、これは何故でしょうか?
半角スペースでも出力できるような対策はありますか?よろしくお願いいたします。

<?php
$username = "ichiro tanaka"; // 名前-苗字間は半角スペース
echo '<FORM ACTION="test.php" METHOD="POST">';
echo 'ユーザ名 : <INPUT TYPE"text" NAME="user" VALUE=' . $username . '><BR>';
echo '<INPUT TYPE="submit" VALUE="編集">';
echo '</FORM>';
?>

回答の条件
  • URL必須
  • 1人20回まで
  • 登録:
  • 終了:2010/06/27 11:07:48
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:yuutakakaki No.1

回答回数2ベストアンサー獲得回数1

ポイント60pt

phpの問題ではなくて、htmlのformの記述で半角スペースが意味を持つからですね。

<INPUT TYPE"text" NAME="user" VALUE=ichiro tanaka>

となるので半角スペースで区切られてVALUEの値はichiroのみになります。

対策は

<INPUT TYPE"text" NAME="user" VALUE="ichiro tanaka">

となればいいので

<INPUT TYPE"text" NAME="user" VALUE="' . $username . '">

と、「"」を追記すればいいでしょう。

http://twitter.com/yuucha

id:cochoo

なるほど、勘違いしておりました。

ご指摘いただきありがとうございます!!

2010/06/27 11:07:39

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません