2011-10-24 4 views
1
$query = mysql_query("SELECT DISTINCT status, vendor FROM tbl_softwareinstalled WHERE vendor NOT LIKE ''"); 
$nums = mysql_num_rows($query); 
echo "<form name = 'filter' action='softwarefilter.php' method='POST'> 
$nums<br> 

<table border = 1><tr><td>&nbsp;</td> 
<td><strong>Software Vendor</strong></td></tr>"; 

$ctr1 = 1; 
while($fetch = mysql_fetch_array($query)) { 
$vendor = $fetch['vendor']; 
$status = $fetch['status']; 
    if(($ctr1 % 2)==1) 
     { print "<tr bgcolor = 'white'>";} 
     else 
     { print "<tr bgcolor = '#EEEEEE'>"; } 
    print "<td><input name= 'chk[]' type='hidden' value='0'> 
    <input type = 'checkbox' name = 'chk[]' value = '$vendor' "; 




    if ($status == 'Enabled') { 
    print "checked = 'checked'></td><td>$vendor</td></tr>"; } 
    else { 
    print "></td><td>$vendor</td></tr>"; } 
    $ctr1++; 
} 
print "</table>"; 
print "<input type = 'submit' name = 'submit' value = 'Update Filter'> 
</form> "; 


$submit = $_POST['submit']; 
if(isset($submit)) 
{ 
    $chk = $_POST['chk']; 
    $count = count($chk); 

    if (empty($chk)) { 

    echo "qweqwe<br>"; 
    } 

     for ($i=0; $i<$count; $i++) { 
     $abc = $chk[$i]; 
     $query = mysql_query("UPDATE tbl_softwareinstalled SET status = 'Enabled' WHERE vendor = '$abc'"); 

     } 

    echo '<meta http-equiv="refresh" content="0.5;url=/assets/softwarefilter.php"> 
      <script language="javascript"> 
      alert("Software filter updated."); 
      </script>'; 
} 

안녕하세요, 코드 블록이있는 while 루프에서 어떻게 체크하지 않을 수 있습니까? 예를 들어 10 개의 값으로 10 개의 체크 박스가 있고, 사용자가 3 개의 체크 박스 (값 : 'abc', 'def', 'ghi')를 제출 한 후 체크 박스를 선택했다고합시다. UNCHECKED 체크 박스를 모두 세어 값을 에코합니다. 3 개의 체크 된 체크 박스의 값은 반향되어서는 안됩니다 (SHOULD NOT).while 루프에서 체크하지 않은 체크 박스를 계산하는 방법

답변

0

브라우저는 을 확인한 사람에게만을 표시합니다. 을 모두 데이터베이스에서 가능한 상자를 당긴 다음 은 브라우저에서 확인했다고 말한을 제거합니다.

0

나는 체크 박스를 셀 수없는 것과 비슷한 일을했습니다. 다음에 제출

<input name= 'unchecked[]' type='hidden' value='0'> 

: 입력 유형 확인란 및 입력 유형의 대신 두 개의 입력 필드 가

<input type="hidden" class="" name="test[]" value="0"> 
<input type="checkbox" class="" name="checkbox[]" value="1"> 

다음에 귀하의 경우 변경이 들어

if (isset($_POST['submit'])) { 
    $cnt = array(); 
    $counter =0; 
    $testcnt = 0; 
    $cnt = 0; 
    if (isset($_POST['test'])) { 
     $testcnt = count($_POST['test']); 
    } 
    if (isset($_POST['checkbox'])) { 
     $cnt = count($_POST['checkbox']); 
    } 
    echo 'the count of unchecked boxes is '; 
    print_r($testcnt-$cnt); 
} 

를 제출 다른 이름

숨겨진 귀하가 isset (제출)을 확인할 때 이에 따라 다음을 추가 할 수 있습니다.

$unchecked_input = count($_POST['unchecked']); 
$chk = $_POST['chk']; 
$count = count($chk); 
echo $unchecked_input-$count; //will output the count of unchecked boxes 
관련 문제