情弱エンジニアのなかのblog

一人前のエンジニアになる為のブログです

ランダム指名アプリケーション制作2

フォームとPOSTを理解しよう

ランダム指名アプリケーション制作の第二回目は大きくつまずいたのでモリモリ書いていきます!

1.ファイルを分割

2.チェックボックスのデータを渡す

1.ファイルを分割

まず前回作ったものは一つのファイル内で完結してたので、ファイルを分けてデータを渡します。 データを渡すのはPOSTを使います

こんな感じです

index.php(受け渡す方)

<form method="post" action="result.php">

result.php(受け取る方)

    if(isset($_POST['rand'])){      //更新ボタンが押されたらランダムでメンバーを出力する
        $num = rand(0, 7);
        echo $member[$num];
    }

もちろん見た目は変わりません、、が遷移するのでページに動きが出ます→やる気が出ます

2.チェックボックスのデータを渡す

チェックボックスを入れたのですがどーしても上手くいかずにいました、、、

このような感じで書いていました

//index.php
<?php  foreach($member as $data):?>
                  <input type="checkbox" name="list" checked>
                  <!--メンバーを表示するチェックボックス -->
                  <?php $i++?>
                <?= $data;?>
            <?php  endforeach;?>

//result.php
for($i = 0; $i < 8;$i++){
        $member_list[] = $_POST["list"];
    }

ですがこれではindex.phpでループを回してもname属性が同じ「list」で更新されてしまっていました。。。

ですのでとりあえずチェックボックスを変えました

//index.php
<input type="checkbox" name="list<?= $i; ?>" value="<?= $i; ?>" checked>
//result.php
    for($i = 0; $i < 8;$i++){
        $member_list[] = $_POST["list$i"];
    }

これでデータを取得は出来たのであとはうまいこと変換していきます。 本日は以上になります。