0

以下のコードは、1 つの質問に対する 4 つのオプションのチェックボックスの回答の 1 つを取得します。

私のデータベースでは、対応する値を読み取る代わりに0、ボックスがチェックされるたびに常に投稿されます。これが鍵だと思います。ここで値を表示するにはどうすればよいですか? キーを値に置き換えようとしましたが、成功しませんでした。

-ここに私のコードがあります-

PHP:

foreach($_POST['Person'] as $key=>$Person) { 
    $_POST['Person'][$key] = intval($Person); 
}
$Person = implode(',', $_POST['Person']); 

HTML:

<ul class="ratings">
    <li><input type="checkbox" name="Person[1]" value="Excellent" /></li>
    <li><input type="checkbox" name="Person[2]" value="Good" /></li>
    <li><input type="checkbox" name="Person[3]" value="Satisfactory" /></li>
    <li><input type="checkbox" name="Person[4]" value="Poor" /></li>                    
</ul>   
4

3 に答える 3

0

質問を正しくしたかどうかはわかりませんが、intval と同様の関数を調査した後、データベースに必要な値を表示するために strval に置き換えました。

$_POST['Person'][$key] = strval($Person);
于 2013-06-21T15:23:49.987 に答える
0

これを試して:

$Person = implode(',', array_keys($_POST['Person']));

_POST['Person']配列のキーは、1, 2, 3, 4値はExcellent, Good, Satisfactory, Poorです。あなたのコードでは、値を呼び出していました。これは、数値ではないものintval()を返します。0

于 2013-06-21T15:05:15.300 に答える