Ada Yang Bisa Bantu

Oleh moiz4 12 0 pada Sabtu, 20 Agu 2016, 01:30:03


Kembali ke forum soal ini

#javascript #loop-while-di-javascript #berlatih-lagi-dengan-pengulangan-while


Petunjuk Diskusi
Silahkan masuk untuk berdiskusi



<?php
//round robin langkah pertama membuat jadwal stand bulanan 
$bulan = date('m');
$bulan2 = date('M');
$tahun = date('Y');
$hari = cal_days_in_month(CAL_GREGORIAN, $bulan, $tahun);
echo "Pada Bulan Ini Terdapat ".$hari." hari<br>";
$jml_shift_per_stand=3*$hari;
$i=1;
$shift=1;
$tgl=1;
$jmltgl=1;
$jam_shift1="00:00:00 s/d 08:00:00";
$jam_shift2="08:00:00 s/d 16:00:00";
$jam_shift3="16:00:00 s/d 24:00:00";
$jml_stand=12;
$stand=1;
$tot_jadwal_jaga_stand=$jml_stand*$jml_shift_per_stand;
echo "Jumlah Jadwal Jaga Stand Pada Bulan ".$bulan2." ".$tahun." Terdapat ".$tot_jadwal_jaga_stand." Jadwal <br>";
while($i<=$tot_jadwal_jaga_stand){
	if($stand<=$jml_stand){
		 if ($tgl<=$hari){
			if ($jmltgl = 1){
				$kode_jadwal_stand="JS".$tgl.$bulan.$tahun."ST".$stand."SH".$shift;
				$tgl_jadwal_stand=$tahun."-".$bulan."-".$tgl;
								echo $i.". ".$kode_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$tgl_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$jam_shift1."WIB<br>";
				$shift = $shift + 1;
				$jmltgl = $jmltgl + 1;
				$i++;
			}
			if ($jmltgl = 2){
				$kode_jadwal_stand="JS".$tgl.$bulan.$tahun."ST".$stand."SH".$shift;
				$tgl_jadwal_stand=$tahun."-".$bulan."-".$tgl;
								echo $i.". ".$kode_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$tgl_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$jam_shift2."WIB<br>";
				$shift = $shift + 1;
				$jmltgl = $jmltgl + 1;
				$i++;
			}
			if ($jmltgl = 3){
				$kode_jadwal_stand="JS".$tgl.$bulan.$tahun."ST".$stand."SH".$shift;
				$tgl_jadwal_stand=$tahun."-".$bulan."-".$tgl;
								echo $i.". ".$kode_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$tgl_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$jam_shift3."WIB<br>";
				$shift = 1;
				$jmltgl = 1;
				$stand++;
				$i++;
			}
			$tgl++;
		}
	}
}
?>

Waktu di Jalanin Pesannya "
Fatal error: Maximum execution time of 30 seconds exceeded" ...... Sekilas masalahnya mau bikin jadwal piket stand bulanan .... 1 hari 3 shift ,12 stand (total jadwal piket stand 1116 jadwal piket)
0 jempol


bramanto
300
1157
· 8 tahun, 2 bulan yang lalu · 1 jempol

Hai coder @moiz4. Sintaks code yang coba dituliskan mengalami looping yang berlanjut. Pada sintaks code tersebut coder belum membatasi perulangan while sampai dimana akan berhenti.  Sebelum tutup endwhile atau } coder cukup menambahkan increment variabel $i . 

$i++;

Sedikit modifikasi source dan style dari coder, dapat dilihat disini : http://pastebin.com/vi76Zg8y 

moiz4
12
0
penanya
· 8 tahun, 2 bulan yang lalu · 0 jempol

Makasih Saran nya suhu coder bramanto  ..... udah bisa jalan cuman posisi $shift sama $stand yang di rubah ........ 

<?php
//round robin langkah pertama membuat jadwal stand bulanan 
$bulan = date('m');
$bulan2 = date('M');
$tahun = date('Y');
$hari = cal_days_in_month(CAL_GREGORIAN, $bulan, $tahun);
echo "Pada Bulan Ini Terdapat ".$hari." hari<br>";
$jml_shift_per_stand=3*$hari;
$i=1;
$shift=1;
$tgl=1;
$jmltgl=1;
$jam_shift1="00:00:00 s/d 08:00:00";
$jam_shift2="08:00:00 s/d 16:00:00";
$jam_shift3="16:00:00 s/d 24:00:00";
$jml_stand=12;
$stand=1;
$tot_jadwal_jaga_stand=$jml_stand*$jml_shift_per_stand;
echo "Jumlah Jadwal Jaga Stand Pada Bulan ".$bulan2." ".$tahun." Terdapat ".$tot_jadwal_jaga_stand." Jadwal <br>";
		while ($tgl<=$hari){
			if ($shift = 1){
				while ($stand<=$jml_stand){
					$kode_jadwal_stand="JS".$tgl.$bulan.$tahun."ST".$stand."SH".$shift;
					$tgl_jadwal_stand=$tahun."-".$bulan."-".$tgl;
					echo $i.". ".$kode_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$tgl_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$jam_shift1." WIB<br>";
					//$query=mysql_query("insert into jadwal_patroli values ('','$kode_jadwal_patroli','','$tgl_jadwal_patroli','$jam1','$rute1');");
					$stand++;
					$i++;
				}
				$shift = $shift + 1;
				$stand = 1;
			}
			if ($shift = 2){
				while ($stand<=$jml_stand){
					$kode_jadwal_stand="JS".$tgl.$bulan.$tahun."ST".$stand."SH".$shift;
					$tgl_jadwal_stand=$tahun."-".$bulan."-".$tgl;
					echo $i.". ".$kode_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$tgl_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$jam_shift2." WIB<br>";
					//$query=mysql_query("insert into jadwal_patroli values ('','$kode_jadwal_patroli','','$tgl_jadwal_patroli','$jam1','$rute1');");
					$stand++;
					$i++;
				}
				$shift = $shift + 1;
				$stand = 1;
			}
			if ($shift = 3){
				while ($stand<=$jml_stand){
					$kode_jadwal_stand="JS".$tgl.$bulan.$tahun."ST".$stand."SH".$shift;
					$tgl_jadwal_stand=$tahun."-".$bulan."-".$tgl;
					echo $i.". ".$kode_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$tgl_jadwal_stand."&nbsp;&nbsp;&nbsp;&nbsp;".$jam_shift3." WIB<br>";
					//$query=mysql_query("insert into jadwal_patroli values ('','$kode_jadwal_patroli','','$tgl_jadwal_patroli','$jam1','$rute1');");
					$stand++;
					$i++;
				}
				$shift = 1;
				$stand = 1;
				$tgl++;
			}
		}
?>

Thanks BTW ....... sukses buat codesaya .... :D