へべれけ

ゲームとDTMと本と煙草と酒と泪と男と女

PHPのお勉強 入力フォームをPHPで出力する

webページを作って、入力フォームに記入した名前を別ページにアウトプットするというからくりPHPを用いてを作る。
参照サイト
qiita.com
www.standpower.com

まずは入力ページから

HTMLならまかせろー

<html>
<head><title>input.html</title></head>
<body>
入力フォーム<br>
名前を入力してください<br>
<form action="output.php" method="post">
 <table border="1"> #以下、入力用フォームのテーブル
  <tr>
   <td>名前</td>
   <td><input type="text" name="name"></td>
   <td colspan="2" align="center">
    <input type="submit"value="入力">
   </td>
  </tr>
 </table>
</form>
</body>
</html>
<form action="output.php" method="post"> 

このフォームタグをフォームに入力した文字をoutput.phpに出力するという意味。 methodはhtmlによるデータの送信方法の指定であり、postはURLとはまた別に入力したデータを送信する形を取る。

<input type="text" name="name">

インプットタグで何をインプットさせるのかを指定して(この場合txt)、text入力用のフィールドを作る。

<input type="submit" value="入力">

インプットタイプでsubmit つまり送信を選び、valueで送信ボタンの表示させる文字を決定する

ぶっちゃけ、このページじゃphpは使っていないのだ。なぜなら動的なページじゃないから。

出力先ページ

さぁ、ここからphpの出番だ。input.htmlでの入力によって、このページの表示が変化する、つまり動的なページなのでPHPで構成されることになる。

<html>
<head><tilte><output.php></title></head>
<body>
<?php #"<?php~?>"がPHPであるというタグ #phpが用いられているのはこの部分のみ
 $name = $_POST['name'];
 print("次のデータを受け取りました<br/>");
 print("名前:$name<br/>");
?>
</body>
</html>
$name = $_POST['name'];

スーパーグローバル変数というらしい。
とりあえず、"そういうものがあるんだ"としておいて、input.htmlでの input type="text" name="name" の部分が変数としてこっちに持ち込まれてきている。methodをURLではない形でデータを送るpostにしたのは、この変数を使うため。
$name = $_POST['name']; で受け取ったname = input type="text" name="name" で入力した文字は、さらにprint("名前:$name
"); によって画面に表示されるといった仕組みだ。