işçi ücreti hesaplama problemi var.
1-30 haziran günlük ücreti 50 TL
1-30 temmuz günlük ücreti 60 TL
1-30 ağustos günlük ücreti 70 TL
...
1-30 mart günlük ücreti 20 TL
gibi ücretleri olan işçilerin
10 haziran 24 ağustos arasındaki işçiye verilecek ücreti nasıl hesaplayabiliriz?
Ücret bilgisi veritabanında ve strtotime ile kayıt ediliyor?
ücret hesapalama?
11
●1.079
- 29-03-2014, 21:09:12Şu şekilde yapmıştım.saintx adlı üyeden alıntı: mesajı görüntüle
CREATE TABLE IF NOT EXISTS `donemsel_fiyatlar` ( `id` int(11) NOT NULL AUTO_INCREMENT, `tarih_baslangic` int(11) NOT NULL, `tarih_bitis` int(11) NOT NULL, `is_id` int(11) NOT NULL, `tarih_ucret` decimal(8,2) NOT NULL DEFAULT '0.00', `aktif` int(11) NOT NULL DEFAULT '1', `kayit_tarih` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin5 AUTO_INCREMENT=5 ; -- -- Tablo döküm verisi `donemsel_fiyatlar` -- INSERT INTO `donemsel_fiyatlar` (`id`, `tarih_baslangic`, `tarih_bitis`, `is_id`, `tarih_ucret`, `aktif`, `kayit_tarih`) VALUES (1, 1396299600, 1398805200, 1, '150.00', 1, '2014-03-29 09:52:10'), (2, 1398891600, 1401483600, 1, '200.00', 1, '2014-03-29 09:52:31'), (3, 1401570000, 1404075600, 1, '300.00', 1, '2014-03-29 09:52:50'), (4, 1396299600, 1398805200, 11, '150.00', 1, '2014-03-29 10:06:44');
is_id değeri önceden oluşturulmuş işler.
Boya,ince işçilik vb. - 30-03-2014, 22:20:24R10'dan banlı olan bir arkadaş konuyu görmüş yardımcı olmam için bana söyledi.
<?php $ucretler = array( "2014-01"=>"10", "2014-02"=>"20", "2014-03"=>"30", "2014-04"=>"40", "2014-05"=>"50", "2014-06"=>"60", "2014-07"=>"70", "2014-08"=>"80", "2014-09"=>"90", "2014-10"=>"10", "2014-11"=>"11", "2014-12"=>"12" ); $baslangic = strtotime("2014-01-15"); $sonlanis = strtotime("2014-04-05"); if($baslangic < $sonlanis) { $gunsaniye = 86400; $kacguncalismis = @floor(@intval($sonlanis-$baslangic) / $gunsaniye); /* 1 gun fazla vermek istersen floor yerine ceil kullan */ $fastphp = 0; for($dongu=0; $dongu<=$kacguncalismis; $dongu++) { $tarih = $baslangic + ($dongu*$gunsaniye); $ucretdonem = @date("Y-m",$tarih); $ayingunsayisi = cal_days_in_month(CAL_GREGORIAN, date("n",$tarih), date("Y",$tarih)); if(isset($ucretler[$ucretdonem])) { $gunlukalacagi = @($ucretler[$ucretdonem]/$ayingunsayisi); $fastphp = $fastphp + $gunlukalacagi; } } echo number_format($fastphp, 2, ',', '.')." TL"; } ?>
Bu yardımcı olabilirmiş. Benim php bilgim yok malesef.
