LoginSignup
3
1

More than 5 years have passed since last update.

PHPとform。$_POSTと配列が絡むとき

Last updated at Posted at 2018-07-24

PHP初学者の気づき

HTML CSSの学習から約2週間経ってPHPの学習を始めました。初めての印象は、「なんだ、HTMLも使えるしJAVAみたいな表記の仕方もある。それにしても<?php?>ってかわいいし、ベトナム語みたいだ。」といったものでした。

PHPとは

WEB開発やWEBアプリを開発するものです。
特徴的なのはWEBサーバ上でPHPは作動するため、WEBサーバーにPHPがインストールされた状態でないと動かないとのことです。

難しかったところ

今回はPHPのprogateを通しての学習において苦戦した「form」についての気づきを共有したいです。特に$_POSTのところと配列が絡むところに苦戦しました。

form

Formとは、見てもらった人に名前とかを書いて送信ボタンを押してもらうという、誰しも経験があるのではないかといえるものです。

formと$_POST

ここでのポイントは、fromでメソッドと送信先を指定し、nameで属性を指定するという作業になります。
例えば、index.phpというファイルにおいて
<div class="form-item">数字</div>
<select name="number">
<option value="未選択">選んでください</option>
<?php
for($i=1;$i<=100;$i++){
echo "<option value='{$i}'>$i</option>";
}
?>
</select>

と書き、select.phpというところで

<div class="form-item">■ 数字</div>
<?php echo $_POST['number'] ?>

と書くことによって、選んだ数字(ここでは1から100)がselect.phpに送られたことになります。select name="number"というところで、index.phpとselect.phpが繋がります。それで、データを引き渡すことができるのですね。

formと配列

index.phpにおいて
<div class="form-item">好きな食べ物</div>
<?php
$types = array('ラーメン', 'カレー', '味噌汁', '牛乳', 'あんぱん', 'その他');
?>
<select name="food">
<option value="未選択">選択してください</option>
<?php
foreach($types as $type){
echo "<option value='{$type}'>{$type}</option>";
}
?>
</select>

とすることで、選択枝を選べるようになっています。配列に格納してから、表示するという流れに少し戸惑ってしまいましたが、勉強したarrayやforeachがここで使えるのかということで面白かったポイントです。

まとめ

PHPを勉強するまで存在を恐れていましたが、勉強を始めると色んなことができるのだとわかりワクワクしています。echoというのがかっこいいですし。引き続きPHPの学習を進めていきます。

参考文献
Progate PHP学習コースⅠ

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1