1

配列で PHP に渡すチェックボックスを含むフォームがあります。次に、Foreach ループを使用してフォームから MySQL データベースにデータを挿入します。データは入力されていますが、空白のエントリも追加されています。値が空白でないことを確認しようとしましたが、空白のデータを入れないようにすることはできません。

形:

<form action="work.php" method="post">
<input type="checkbox" name="work[]" value="MOC" /> MOC<br />
<input type="checkbox" name="work[]" value="Spectrum" /> Spectrum<br />
<input type="checkbox" name="work[]" value="Calls" /> Calls<br />
<input type="checkbox" name="work[]" value="IPMon" /> IPMon<br />
<input type="checkbox" name="work[]" value="SEV 1/2" /> SEV 1/2<br />
<input type="checkbox" name="work[]" value="LBC" /> LBC<br />
<input type="checkbox" name="work[]" value="Email Queue" /> Email Queue<br />
<input type="checkbox" name="work[]" value="NOC Inbox" /> NOC Inbox<br />
<label>Special Projects:</label><input type="text" name="special" />
<input type="submit" name="submit" value="Submit" />
</form>

PHP:

if(ISSET($_POST['work'])){
    foreach($_POST['work'] as $work){
        $mysqli->query("INSERT INTO Working (wuid, task) VALUES ('".$username."', '".$work."')");
    }
}

MySQL データ:

wuid    task    id
tduran          37
tduran  IPMon   36
tduran  Calls   35

$username 変数は LDAP 認証から取得されるため、変更されません。問題は $work にあります。配列と変数を何度も出力しましたが、空白の内容を表示できません。これで私の髪を引っ張っています。うまくいけば

4

1 に答える 1

0

上記の問題の説明を見ると、チェックボックス要素の HTML 配列が定義されています。サーバー側では、配列になる $_POST['work '] を使用してチェックされるチェックボックスのみの値を取得します。

したがって、すべてのチェックボックスの値を取得するには、すべてのチェックボックスをオンにする必要があります

$_POST['work'] を介して、チェックされたチェックボックスの結果の値の配列を取得します。

于 2012-09-25T02:47:39.217 に答える