2076 Posts in 483 Topics- by 820 Members - Latest Member: akunp2

Pages: [1]   Go Down
  Print  
Author Topic: [Ask] Date of birth insert  (Read 1270 times)
whisnuisleea
phpBB Guru
*
Offline Offline

Posts: 6


whisnu_dp
View Profile Email
« on: August 27, 2008, 12:38:23 PM »

Dok aku mau nanya lagi nih...tentang javascript...
maaf ya klo salah tempat lagi...  :?

kmrin aku hbis donlot script tp ga tahu cara pakenya.... :D

Code:
<SCRIPT LANGUAGE="JavaScript">
/* Javascript Date Selector
   by Warren Brown (03/01/2004 Radiokop South Africa)

   Script to place Month/day/year onto a web page, leap year enabled
*/

var date_arr = new Array;
var days_arr = new Array;

date_arr[0]=new Option("January",31);
date_arr[1]=new Option("February",28);
date_arr[2]=new Option("March",31);
date_arr[3]=new Option("April",30);
date_arr[4]=new Option("May",31);
date_arr[5]=new Option("June",30);
date_arr[6]=new Option("July",31);
date_arr[7]=new Option("August",30);
date_arr[8]=new Option("September",30);
date_arr[9]=new Option("October",31);
date_arr[10]=new Option("November",31);
date_arr[11]=new Option("December",30);

function fill_select(f)
{
        document.writeln("<SELECT name=\"months\" class=\"btn\" onchange=\"update_days(formregister)\">");
        for(x=0;x<12;x++)
                document.writeln("<OPTION value=\""+date_arr[x].value+"\">"+date_arr[x].text);
        document.writeln("</SELECT> <SELECT class=\"btn\" name=\"days\"></SELECT>");
        selection=f.months[f.months.selectedIndex].value;
}

function update_days(f)
{
        temp=f.days.selectedIndex;
        for(x=days_arr.length;x>0;x--)
        {
                days_arr[x]=null;
                f.days.options[x]=null;
         }
        selection=parseInt(f.months[f.months.selectedIndex].value);
        ret_val = 0;
        if(f.months[f.months.selectedIndex].value == 28)
        {
                year=parseInt(f.years.options[f.years.selectedIndex].value);
                if (year % 4 != 0 || year % 100 == 0 ) ret_val=0;
                else
                        if (year % 400 == 0)  ret_val=1;
                        else
                                ret_val=1;
        }
        selection = selection + ret_val;
        for(x=1;x < selection+1;x++)

        {
                days_arr[x-1]=new Option(x);
                f.days.options[x-1]=days_arr[x-1];
        }
        if (temp == -1) f.days.options[0].selected=true;
        else
             f.days.options[temp].selected=true;
}
var time = new Date();
var year = time.getYear();
if (year < 1900) {
year = year + 1900;
}
var date = year - 50;
var future = year - 16;
function year_install(f)
{
        document.writeln("<SELECT name=\"years\" class=\"btn\" onchange=\"update_days(formregister)\">")
        for(x=date ;x<future ;x++) document.writeln("<OPTION value=\""+x+"\">"+x);
        document.writeln("</SELECT>");
        update_days(f)
}
</script>

<body>
<form name="formregister" action="register.php" method ="post">
<table border="0" width="100%" id="table1" cellspacing="0" cellpadding="0">
<tr>
<td width="20%">Date Of Birth</td>
<td width="1%" align="center">:</td>
<td width="72%">
<SCRIPT LANGUAGE="JavaScript">
fill_select(document.formregister);year_install(document.formregister)
</script>
</td>
</tr>
</table>
</form>

script trsbut adalah form untuk tanggal lahir....
yang mau aku tanyain, gmn ya caranya biar nanti di register.php tanggal yg muncul
bs ber format "yyyy/mm/dd" trus gmn cara nangkap valuenya dari form itu
makasih ya dok.....
Logged

" EVERYTHING SHOULD BE MADE AS SIMPLE AS POSSIBLE, BUT NOT SIMPLER "
yudicerdas
phpBB Guru
*
Offline Offline

Posts: 12



View Profile
« Reply #1 on: September 01, 2008, 05:18:18 AM »

kalo mnurut gw, selama PHP masih bisa, jangan pernah make JS untuk urusan action form. Bisa Third Party bro ! value na bisa di ubah2 via Client

beda dengan PHP yang menyerahkan semua aksi berdasarkan komando dari Server, maksud gw di peroleh setelah ada persetujuan Apache

hmm.. jimane kalo make script ini aja misalna:

Format date php yang bisa lu pake untuk format diatas (yyyy/mm/dd) adalah:
Code:
date("Y/m/d");

nah kalo untuk ngambil na dari string inputan, maka lu musti konvert dolo ke time menggunakan fungsi strtotime

Code:
$tanggalan = "$_POST[tahun]-$_POST[bulan]-$_POST[tanggal]";
$strDate   = strtotime("$tanggalan"); echo 'Tanggal Lahir Anda: '.date("Y/m/d", $strDate);

dimana $tanggalan adalah inputan dari form

dan ini script lengkapna:

Code:
<html>
<head>
<title>Input Tanggal Lahir</title>
</head>

<body>
<h2>Input Tanggal Lahir</h2>
<form action="" method="post">
Tanggal:

<!--Bulan-->
<select name="bulan" size="1">
<?
for($i=1;$i<=12;$i++)
{
if($i==1)
{
$namaBulan = "Januari";
}
elseif($i==2)
{
$namaBulan = "Februari";
}
elseif($i==3)
{
$namaBulan = "Maret";
}
elseif($i==4)
{
$namaBulan = "April";
}
elseif($i==5)
{
$namaBulan = "Mei";
}
elseif($i==6)
{
$namaBulan = "Juni";
}
elseif($i==7)
{
$namaBulan = "Juli";
}
elseif($i==8)
{
$namaBulan = "Agustus";
}
elseif($i==9)
{
$namaBulan = "September";
}
elseif($i==10)
{
$namaBulan = "Oktober";
}
elseif($i==11)
{
$namaBulan = "Nopember";
}
else
{
$namaBulan = "Desember";
}

?>
  <option value="<? echo $i; ?>"><? echo $namaBulan; ?></option>
<?
}
?>
</select>


<!--Tanggal-->
<select name="tanggal" size="1">
<?
for($i=1;$i<=31;$i++)
{
?>
  <option value="<? echo $i; ?>"><? echo $i; ?></option>
<?
}
?>
</select>

<!--Tahun-->
<select name="tahun" size="1">
<?
for($i=(date("Y")-10);$i<=date("Y");$i++)
{
?>
  <option value="<? echo $i; ?>"><? echo $i; ?></option>
<?
}
?>
</select>



<label>
<input type="submit" name="submit" value="Submit" />
</label>
</form>

<div style="margin-top:20px;">
<?
if(isset($_POST['submit']))
{
$tanggalan = "$_POST[tahun]-$_POST[bulan]-$_POST[tanggal]";
$strDate   = strtotime("$tanggalan"); echo 'Tanggal Lahir Anda: '.date("Y/m/d", $strDate);
}
?>
</div>
</body>
</html>
Logged

Egoisnya Pemerintah !!
Pages: [1]   Go Up
  Print  
 
Jump to: