dostum...
bir checkbox un gönderilip gönderilmediğini anlaman için,

if(isset($_POST['onay'])) {

şu yeterlidir. checkbox işaretlenmezse eğer zaten POST edilmez. isset kullanarak post edilip edilmediğini anlarsın.
checkboxlar için bu yöntem kullanılır yani.
Sen tablonda ONAY diye bir bölüm açtıysan ve onaylanıp onaylanmadığının girilmesini istiyorsan şöyle yap;

if(isset($_POST['onay'])) {
$onay = "1";
} else {
$onay = "0";
}

böylece veritabanına yazarken sadece $onay değişkenini yaz, post edilip edilmediğine if karar versin.