/    Sign up×
Community /Pin to ProfileBookmark

Validation of php drop down menu of months,days and years

Please help with validation, cannot get it to validate, for leaps years, and feb,april 31.

Got script from [url]http://www.plus2net.com/php_tutorial/date-selection.php[/url]
then tried to apply validation on [url]http://www.plus2net.com/php_tutorial/da[/url] … dation.php

This is what I have so far but I get this error message, Fatal error: Cannot redeclare checkdate() in C:xampphtdocsdropdownindex.php on line 34. Please help

<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″>
<title></title>
</head>

<?php
$todo=$_POST[‘todo’];
if(isset($todo) and $todo==”submit”){
$month=$_
POST[‘month’];
$dt=$_POST[‘dt’];
$year=$_
POST[‘year’];
$date_value=”$month/$dt/$year”;
echo “mm/dd/yyyy format :$date_value<br>”;
$date_value=”$year-$month-$dt”;
echo “YYYY-mm-dd format :$date_value<br>”;
}
?>

<?php

function checkdate(){
{
$m=”11″;
$d=”31″;
$y=”05″;
If(!checkdate($m,$d,$y)){
echo “invalid date”;
}else {
echo “Entry date is correct”;
}
}
}
?>

<form method=post name=f1 action=”><input type=hidden name=todo value=submit>
<table border=”0″ cellspacing=”0″ >
<tr><td align=left >
<select name=month value=”>Select Month
<option value=’01’>January</option>
<option value=’02’>February</option>
<option value=’03’>March</option>
<option value=’04’>April</option>
<option value=’05’>May</option>
<option value=’06’>June</option>
<option value=’07’>July</option>
<option value=’08’>August</option>
<option value=’09’>September</option>
<option value=’10’>October</option>
<option value=’11’>November</option>
<option value=’12’>December</option>
</select>

</td><td align=left >
Date<select name=dt >
<option value=’01’>01</option>

<option value=’02’>02</option>
<option value=’03’>03</option>
<option value=’04’>04</option>
<option value=’05’>05</option>
<option value=’06’>06</option>
<option value=’07’>07</option>
<option value=’08’>08</option>
<option value=’09’>09</option>
<option value=’10’>10</option>
<option value=’11’>11</option>
<option value=’12’>12</option>
<option value=’13’>13</option>
<option value=’14’>14</option>
<option value=’15’>15</option>
<option value=’16’>16</option>
<option value=’17’>17</option>
<option value=’18’>18</option>
<option value=’19’>19</option>
<option value=’20’>20</option>
<option value=’21’>21</option>
<option value=’22’>22</option>
<option value=’23’>23</option>
<option value=’24’>24</option>
<option value=’25’>25</option>
<option value=’26’>26</option>
<option value=’27’>27</option>
<option value=’28’>28</option>
<option value=’29’>29</option>
<option value=’30’>30</option>
<option value=’31’>31</option>
</select>

<tr><td align=left >
<select name=year value=”>Select Year
<option value=’2009′>2009</option>
<option value=’2010′>2010</option>
<option value=’2011′>2011</option>
<option value=’2012′>2012</option>
<option value=’2013′>2013</option>
<option value=’2014′>2014</option>
<option value=’2015′>2015</option>
<option value=’2016′>2016</option>
<option value=’2017′>2017</option>
<option value=’2018′>2018</option>
<option value=’2019′>2019</option>
<option value=’2020′>2020</option>
</select>

<input type=submit value=Submit>
</table>

</form>

</html>

to post a comment
PHP

4 Comments(s)

Copy linkTweet thisAlerts:
@NogDogApr 18.2009 — Probably the simplest thing would be to use the [url=http://www.php.net/check_date]check_date[/url]().
Copy linkTweet thisAlerts:
@ajpenn215authorApr 18.2009 — Can you show me how to use check date() function by editing my script, im still a little confused. thanks
Copy linkTweet thisAlerts:
@SheldonApr 18.2009 — If you look at the link NogDog provided, it has an easy usage example.

[code=php]bool checkdate ( int $month , int $day , int $year )[/code]


In your case, it is hard to tell as you have not wrapped your code in [ php ] tages [ /php ] nor have you intended your code.


I assume with your code, you want something like this

[code=php]<?php
$todo = $_POST['todo'];

if(isset($todo) && $todo=="submit") {

$month = $_POST['month'];
$day = $_POST['dt'];
$year = $_POST['year'];
if(checkdate((int)$month, (int)$day, (int)$year)) {
$date_value1 = $month.'/'. $day .'/'. $year;
$date_value2 = $year.'-'. $month .'/'. $day;
echo ('<p>mm/dd/yyyy format :'. $date_value1 .'</p>');
echo ('<p>yyyy-mm-dd format :'. $date_value2 .'</p>');
}
}
?>[/code]
Copy linkTweet thisAlerts:
@ajpenn215authorApr 18.2009 — I tried some code of checkdate from http://us.php.net/check_date. I tried alot and cannot get it to work. There might be something wrong with how I put the script together. Can some help out with this and produce a working script that I can review and understand. Thanks again.
×

Success!

Help @ajpenn215 spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 5.20,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @AriseFacilitySolutions09,
tipped: article
amount: 1000 SATS,

tipper: @Yussuf4331,
tipped: article
amount: 1000 SATS,

tipper: @darkwebsites540,
tipped: article
amount: 10 SATS,
)...