【 PHP 】PHP8に入門してみた 180日目 PHPの基本 ( リクエスト情報 複数の値を持つ要素 )

PHP8技術者認定初級試験 が始まるようなので 試験に向けて (できるだけ)勉強しようと思います! 使用する書籍は独習PHP 第4版(山田 祥寛)|翔泳社の本 (shoeisha.co.jp) となります。

リクエスト情報

チェックボックスを処理するには

チェックボックスを処理するにはちょっとしたコツが必要です。

しかも「リクエストを送信する側(フォームパーツ)」にコツが必要です。

具体的にはname属性に[]を付与します。

check_multi1.php

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8" />
    <title>
        チェックボックス
    </title>
</head>

<body>
    <!-- action属性にはポストデータの送信先を指定 -->
    <form method="POST" action="hello.php">
        あなたがよく使用する言語は?<br />
        <input id="php" type="checkbox" name="lang[]" value="PHP" />
        <label for="php">PHP</label>
        <input id="java" type="checkbox" name="lang[]" value="Java" />
        <label for="java">Java</label>
        <input id="csharp" type="checkbox" name="lang[]" value="C#" />
        <label for="csharp">C#</label>
        <input type="submit" vlaue="送信" />
    </form>
</body>

</html>

hello.php

<!DOCTYPE html>
<?php require_once './Encode.php'; ?>
<html>

<head>
    <meta charset="UTF-8" />
    <title>こんにちは!</title>
    <!-- Bootstrapを有効化 -->
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" />
</head>

<body>
    選択されたのは、<?= e(implode(',', $_POST['lang'])) ?>です
</body>

</html>

 

 

メモ

フロントエンドに自身の言語仕様を強制するのはちょっと・・・😅

PHPPHP

Posted by raika@blog