0

2 つのパラメーター ($group、$array) を受け取る関数があります。

$group = 入力属性の「名前」 $array = チェックボックス値の配列

function checkboxes($group, $array) {
    $string = NULL;
    $group = (string)$group."[]";
    foreach($array as $key => $value) {
        $string .= "<br /><input type='checkbox' id=".$value." name='".$group."'        value='".$value."' /><label for=".$value.">$value</label>";
    }
    return $string;
}

私がやろうとしているのは、それを適切な HTML に変換して、スクリプトで値を処理できるようにすることです。

入力は次のとおりです。

checkboxes("class", array("Warrior","Mage","Priest","Rogue"));


$boxes = $_POST['class'];
for ($i=0; $i<count($boxes); $i++) {
    echo $boxes[$i];
}

出力: "R" (複数チェックされている場合)

何か助けていただければ幸いです。忘れてしまった場合は申し訳ありません。

これは宿題なので、stackoverflow の規約や学校の倫理規定に違反するような回答はしないでください。

4

2 に答える 2

1

これを試して。チェックボックスをすべて印刷するようです。

<?php
function checkboxes($group, $array) {
    $string = NULL;
    $group = (string)$group."[]";
    foreach($array as $key => $value) {
        $string .= "<br /><input type='checkbox' id=".$value." name='".$group."'        value='".$value."' /><label for=".$value.">$value</label>";
    }
    return $string;
}

if( isset( $_POST[ 'class' ] ) ) {
    $boxes = $_POST['class'];
    for ($i=0; $i<count($boxes); $i++) {
        echo $boxes[$i] . '<br />';
    }

}
?>
<form action="t23.php" method="POST">
    <?php
    echo checkboxes("class", array("Warrior","Mage","Priest","Rogue"));
    ?>
    <input type="submit"  name="btnOutput" value="submit"/>
</form>
于 2012-10-01T06:21:57.487 に答える
0

あなたのアレンジメントがあなたのページでどのようになっているのかわかりませんが、

<?php
    if(isset($_POST) && !empty($_POST['class'])){
        echo 'SELECTED: <br /><br />';
        $boxes = $_POST['class'];
        for ($i=0; $i<count($boxes); $i++) {
            echo $boxes[$i].'<br />';
        }

    }

    function checkboxes($group, $array) {
        $string = NULL;
        $group = (string)$group."[]";
        foreach($array as $key => $value) {
            $string .= "<br /><input type='checkbox' id=".$value." name='".$group."'        value='".$value."' /><label for=".$value.">$value</label>";
        }
        return $string;
    }
    echo '<form method="post">';
    $boxes = checkboxes("class", array("Warrior","Mage","Priest","Rogue"));
    echo $boxes;
    echo '<input type="submit">';
?>
于 2012-10-01T06:28:54.403 に答える