Syntax hatası yapmamışsam eğer, en az sorgu ile işini bitirmek için aşağıdaki kodları kullanman daha sağlıklı olur
$baslangic=$temp_bas= $_POST['baslangic'];
$bitis= $temp_bit = $_POST['bitis'];
$toplam=0;
$cek=true;
while($cek) {
$sorgu=mysql_query("SELECT fiyat,bitis FROM ücretler WHERE baslangic<='$temp_bas' AND bitis>='$bitis'");
$veri=mysql_fetch_assoc($veri);
$toplam+=$veri['fiyat'];
if($veri['bitis']>=$bitis)
$cek=false;
else {
$temp_bas_time=strtotime(date('d.m.Y',$veri['bitis']));
$temp_bas_time+=24*60*60;
$temp_bas=mktime(0, 0, 0, date("n", $temp_bas_time), date("j", $temp_bas_time), date("Y", $temp_bas_time) );
}
}yalnız uyarayım, bu şekilde düzgün çalışsa da tam yaz zamanına veya kış zamanına geçişlerde sorun yaşayabilirsin. aslında çözümü çok basit ama onu da sana bırakayım date('I',$veri['bitis']) ile date('I',$temp_bas) lar birbirine eşit mi kontrol edip eşit değilse 1 saat eklemen veya çıkartman gerekir. Bunu mktime satırından önce yaparsan hiç bir sorun yaşamaman gerekir