2016-10-08 6 views
-2

私が選択されていないチェックボックスの値を取得する方法を選択しchcekboxesのために試みたが、PHPで複数のチェックされていないチェックボックスの値を取得するには?

<form action="#" method="post"> 
<input type="checkbox" name="check_list[]" value="C/C++"><label>C/C++</label><br/> 
<input type="checkbox" name="check_list[]" value="Java"><label>Java</label><br/> 
<input type="checkbox" name="check_list[]" value="PHP"><label>PHP</label><br/> 
<input type="submit" name="submit" value="Submit"/> 
</form> 

<?php 
    if(isset($_POST['submit'])){//to run PHP script on submit 
     if(!empty($_POST['check_list'])){ 
    // Loop to store and display values of individual checked checkbox. 
     foreach($_POST['check_list'] as $selected){ 
     echo $selected."</br>"; 
     } 
     } 
    } 
?> 

+0

あなたの選択されていないチェックボックスは、POSTデータでは使用できません。あなたのPOSTには、チェックされたもののみが含まれます。 –

+0

しかし、私は複数の選択されていないチェックボックスの値が必要ですか?そのための解決策は何ですか? –

+0

しかし、私は選択されていないチェックボックスの値を必要としましたか?解決策は何ですか –

答えて

0

あなたの選択されていないチェックボックスはPOSTデータでは利用できませんのでご注意ください。あなたのPOSTには、チェックされたもののみが含まれます。

可能なすべてのオプションを$optionsに保存し、チェックされたすべてのオプションを$checkedに保存することができます。

array_diffを使用すると、$options$selectedの違いを見つけることで、未チェックのオプションが見つかることがあります。

if (isset($_POST['submit'])) { //to run PHP script on submit 
    $options = array("C/C++", "Java", "PHP"); 
    $checked = isset($_POST['check_list']) ? $_POST['check_list'] : array(); 
    $unchecked = array_diff($options, $checked); 
    /* Other code */ 
} 
+0

私の問題は解決されています –

関連する問題