mesela ödenmedi seçtiğim zaman veritabanına kaydediyor onda sorun yok ama sayfadan çıkıp tekrar gırınce ödendi olarak değişiyor seçtiğim sabit kalmıyor bunu nasıl çözerim
Html de select etiketinde en üstteki değer varsayılan olarak seçili gelir. Senin şuan select kutunun içerisinde ödendi ve ödenmedi şeklinde 2 adet seçeneğin var üstte ödendi bulunduğu için ilk o gösteriliyor.
Çözüm için select içerisine en üstte bir option değeri daha eklemen gerekir. Ama selected olarak eklememelisin. Örnek aşağıda yer almaktadır.
Select içerisindeki option değerlerinde selected olan varsa ilk o seçili gelir, eğer yoksa en üstte eklediğin varsayılan olarak gelir. Kolay gelsin.
Yazmış olduğunuz php kodunda sorun olabilir. Yani option içerisine selected="selected" ibaresi eklenmiyor olabilir. Bunu kontrol ediniz. $_POST['ocak'] bulunmuyor olabilir veya odendi şekliyle gelmiyor olabilir.
Edit: Post değeri ile çekim yapmaktasınız, yani bir veriyi post edip gönderdiğiniz sürece sayfada bu eleman bulunur. Eğer sayfayı post işlemi yapılmadan önce açıyor ve gelmediğini belirtiyorsanız. Bunun olmaması gayet normaldir. Siz post ettikten sonra $_POST['ocak'] ile kontrol sağlayabilirsiniz. Eğer post işlemi yapılmadan kontrol sağlamak istiyorsanız, veritabanınızdan ilgili ay ile ilgili veriyi çekip kontrol sağlayabilirsiniz. Eğer hem post hem veritabanı verisi ile kontrol sağlamak istiyorsanız. Küçük bir if kontrolü ile sağlayabilirsiniz.