Postingan lainnya
Date array javascript
Selamat malam (karena bikinya malam),
Saya mau nanya nih pada para master javascript kalau pertanyaan saya konyol jangan di bully ya maklum saya masih sangat awam dengan programing.Ok to the point aja misal saya mempunyai tanggal,bulan dan tahun lahir dari 3 orang dan masing"berbeda.pertanyaan saya bagaimana saya bisa menghitung umur dari 3 orang tersebut dan apabila ada yang kurang dari batas minimal maka akan muncul pringatan.Ini kode saya
<?php
for($a=0;$a<3;$a++){
?>
<font>Tanggal :</font>
<select name="tanggal" id="tanggal<?php echo $a?>">
<?php
for ($r=1;$r<32;$r++) {
?>
<option value="<?php echo $r;?>"><?php echo $r;?></option>
<?php }?>
</select>
<font>Bulan : </font>
<select name="bulan" id="bulan<?php echo $a?>">
<option value="01"><font face="verdana">Jan</font></option>
<option value="02"><font face="verdana">Feb</font></option>
<option value="03"><font face="verdana">Mar</font></option>
<option value="04"><font face="verdana">Apr</font></option>
<option value="05"><font face="verdana">Mei</font></option>
<option value="06"><font face="verdana">Jun</font></option>
<option value="07"><font face="verdana">Jul</font></option>
<option value="08"><font face="verdana">Agst</font></option>
<option value="09"><font face="verdana">Sep</font></option>
<option value="10"><font face="verdana">Okt</font></option>
<option value="11"><font face="verdana">Nov</font></option>
<option value="12"><font face="verdana">Des</font></option>
</select>
<font>Tahun : </font>
<select id="tahun<?php echo $a?>" name="tahun">
<?php
for ($t=2007;$t<2018;$t++) {
?>
<option value="<?php echo $t;?>"><?php echo $t;?></option>
<?php }?>
</select>
<label id="hasilnya<?php echo $a?>"></label><br>
<br>
<?php }?>
</form>
<button type="submit" onclick="hitung()">Hitung</button>
<script>
function hitung () {
var tanggal = document.getElementById('tanggal').value;
var bulan = document.getElementById('bulan').value;
var tahun = document.getElementById('tahun').value;
var tanggaljadi = tahun+"/"+ bulan +"/"+ tanggal;
var tahun = new Date(tanggaljadi);
var ambiltanggal = new Date();
var tanggalsekarang = ambiltanggal.getDate();
var bulansekarang = ambiltanggal.getMonth()+1;
var tahunsekarang = ambiltanggal.getFullYear();
var tanggalmentah = tahunsekarang+"/"+ bulansekarang +"/"+ tanggalsekarang;
var tanggalpembanding = new Date(tanggalmentah);
var isi = (( tanggalpembanding - tahun)/86400000)/364.25;
var selisih = new Date((tanggalpembanding - ((2*364.25*86400000)-86400000)));
var selisihsetelah = new Date(selisih);
var rest = selisihsetelah.getDate();
var rbulan = selisihsetelah.getMonth()+1;
var rtahun = selisihsetelah.getFullYear();
var pering = "Tanggal yang anda masukan sama dengan atau sebelum tanggal";
if(isi < 2) {
document.getElementById('hasilnya').innerHTML= pering + rest+"-"+ rbulan +"-"+ rtahun;
}
else {
alert ("Umurnya pas ");
}
}
</script>
</html>
Mohon pencerahan pada programer amatiran ini hehhehe
2 Jawaban:
Dicari selisih tanggal lahir sama tahun sekarang. Kemudian di bandingin sama batas minimal.
Cth:
<pre>
function hitungSelisih(tanggal) {
// ini hasilnya sama 86400000 const satuHari = 10006060*24
// Rubah tanggal ke milisecond biar gampang itungnya const hariIni = new Date().getTime(); const tanggalLahir = tanggal.getTime();
// Hitung bedanya pas di milisecond const perbedaanHari = hariIni - tanggalLahir;
return Math.round(perbedaanHari/satuHari);
}
// Contoh pakai
const tanggalLahir = new Date(tahun, bulan, tanggal); const hasilnya = hitungSelisih(tanggalLahir)
// Kalau kurang dari 2 tahun if(hitungSelisih < 2) .... </pre>
*Saya belum coba ini, soalnya pake hp so silahkan di coba
Makasih mas untuk jawabanya tapi masalah itu bisa saya selesaikan Alhamdulillah tapi ada masalah baru hehehe..Saya kan membuat form yang dinamis dan terdiri dari beberapa array masalahnya adalah mengenai validasi form .Ada script dari javascript yang apabila filenya saya simpan dengan exstensi php tidak bisa jalan tapi ketika saya simpan dengan exstensi .html bisa jalan scriptnya