2012-08-23 167 views
0

我是新來的PHP,我試圖實現一個代碼,將複選框放在表中,並添加數據庫中這些複選框提交的數據。以下是我在PHP代碼中創建循環內的複選框: -在php中提交複選框的值

$i=0; 
$i++; 
$transcript = $DB->get_field('course_completions', 'Transcript', array ('course'=>$course->id, 'userid'=>$this->user->id), $strictness=IGNORE_MISSING); 
if($transcript==0){ 
    $checked=""; 
} 
else{ 
    $checked='checked'; 
} 
$check = '<input type="checkbox" name="tanscript'.$i.'" value=0 '.$checked.' />'; 
$data = array($check, $year, $sem, $courselink, $coursefullname, $type, $max_credits, $grade, $points); 

$ data數組用於在表中顯示數據。 $ transcript用於從數據庫檢索值,並確定是否應該選中該複選框。

有人能告訴我如何在數據庫中的複選框中輸入數據,而不使用提交按鈕?另外,如果有人再次取消選中該框,我該如何在數據庫中輸入新值?

+1

Google? http://www.html-form-guide.com/php-form/php-form-checkbox.html –

+1

爲了將信息從客戶端發送到服務器端,您應該使用AJAX或提交一個像arxanas建議。 – alfasin

+0

哦。我無法直接使用子按鈕,這就是爲什麼我問這個問題的原因。抱歉。應該在我的問題中提到這一點。我會閱讀AJAX並檢查如何做到這一點。謝謝。 – user1439090

回答

1

默認情況下(?)被設置爲「開」時$檢查,否則被設置爲「關」

0

您可以創建給予checked="checked"您選中複選框複選框。你可以通過像這樣的變量來實現它;

if($something == $data){ 
    $check = 'checked="checked"'; 
}else{ 
    $check = ''; 
} 

你可以在你的複選框中實現這個;

echo '<input type="checkbox"'.$check.'value="somevalue">' 

也可能使用任一GETPOST方法傳遞值存入DB使用<form>。例如,你可以在你的表單中試試這個;

'

,並在您喜歡 $ checkbox_value = $ _ POST [ 「chkbox」] processor.php你可以獲取數據;

並且您可以使用if - else作爲$checkbox_value來檢查是否有價值。