I'm a complete newby where PHP coding is concerned, and have just had to look at some code produced way back in 2002 by someone else.
The code in question is given below and is used to produce date dropdown lists on the page. Comments are included in the code.
The comment at the start specifies PHP4 ONLY!! but the current host uses PHP5.
My question is this: Will this affect the functions performance (I'm guessing yes - why else put the comment in) and if so would it be best to
ask the host to install PHP4 instead or in some way update the function to use PHP5?
All help and advice gratefully received.
Tony.
Code: Select all
function generate_datedropdown($fn)
{
// PHP4 ONLY !!
$d = getdate();
if (func_num_args() == 2)
{
if (func_get_arg (1) <> "0000-00-00")
{
$d = getdate(strtotime(func_get_arg (1)));
}
else
{
$d = "";
$d['mday'] = "0";
$d['mon'] = "0";
$d['year'] = "0";
}
}
// Generates a date drop down ... if a date was passed in then it becomes the default else the currect date is used.
// Day
?><select name="<?=$fn?>_day">
<option value="0"<? if ($d['mday'] == "0") echo " selected";?>>-</option>
<option value="1"<? if ($d['mday'] == "1") echo " selected";?>>1st</option>
<option value="2"<? if ($d['mday'] == "2") echo " selected";?>>2nd</option>
<option value="3"<? if ($d['mday'] == "3") echo " selected";?>>3rd</option>
<option value="4"<? if ($d['mday'] == "4") echo " selected";?>>4th</option>
<option value="5"<? if ($d['mday'] == "5") echo " selected";?>>5th</option>
<option value="6"<? if ($d['mday'] == "6") echo " selected";?>>6th</option>
<option value="7"<? if ($d['mday'] == "7") echo " selected";?>>7th</option>
<option value="8"<? if ($d['mday'] == "8") echo " selected";?>>8th</option>
<option value="9"<? if ($d['mday'] == "9") echo " selected";?>>9th</option>
<option value="10"<? if ($d['mday'] == "10") echo " selected";?>>10th</option>
<option value="11"<? if ($d['mday'] == "11") echo " selected";?>>11th</option>
<option value="12"<? if ($d['mday'] == "12") echo " selected";?>>12th</option>
<option value="13"<? if ($d['mday'] == "13") echo " selected";?>>13th</option>
<option value="14"<? if ($d['mday'] == "14") echo " selected";?>>14th</option>
<option value="15"<? if ($d['mday'] == "15") echo " selected";?>>15th</option>
<option value="16"<? if ($d['mday'] == "16") echo " selected";?>>16th</option>
<option value="17"<? if ($d['mday'] == "17") echo " selected";?>>17th</option>
<option value="18"<? if ($d['mday'] == "18") echo " selected";?>>18th</option>
<option value="19"<? if ($d['mday'] == "19") echo " selected";?>>19th</option>
<option value="20"<? if ($d['mday'] == "20") echo " selected";?>>20th</option>
<option value="21"<? if ($d['mday'] == "21") echo " selected";?>>21st</option>
<option value="22"<? if ($d['mday'] == "22") echo " selected";?>>22nd</option>
<option value="23"<? if ($d['mday'] == "23") echo " selected";?>>23rd</option>
<option value="24"<? if ($d['mday'] == "24") echo " selected";?>>24th</option>
<option value="25"<? if ($d['mday'] == "25") echo " selected";?>>25th</option>
<option value="26"<? if ($d['mday'] == "26") echo " selected";?>>26th</option>
<option value="27"<? if ($d['mday'] == "27") echo " selected";?>>27th</option>
<option value="28"<? if ($d['mday'] == "28") echo " selected";?>>28th</option>
<option value="29"<? if ($d['mday'] == "29") echo " selected";?>>29th</option>
<option value="30"<? if ($d['mday'] == "30") echo " selected";?>>30th</option>
<option value="31"<? if ($d['mday'] == "31") echo " selected";?>>31st</option>
</select><?
// Month
?><select name="<?=$fn?>_month">
<option value="0"<? if ($d['mon'] == "0") echo " selected";?>>-</option>
<option value="JAN"<? if ($d['mon'] == "1") echo " selected";?>>January</option>
<option value="FEB"<? if ($d['mon'] == "2") echo " selected";?>>February</option>
<option value="MAR"<? if ($d['mon'] == "3") echo " selected";?>>March</option>
<option value="APR"<? if ($d['mon'] == "4") echo " selected";?>>April</option>
<option value="MAY"<? if ($d['mon'] == "5") echo " selected";?>>May</option>
<option value="JUN"<? if ($d['mon'] == "6") echo " selected";?>>June</option>
<option value="JUL"<? if ($d['mon'] == "7") echo " selected";?>>July</option>
<option value="AUG"<? if ($d['mon'] == "8") echo " selected";?>>August</option>
<option value="SEP"<? if ($d['mon'] == "9") echo " selected";?>>September</option>
<option value="OCT"<? if ($d['mon'] == "10") echo " selected";?>>October</option>
<option value="NOV"<? if ($d['mon'] == "11") echo " selected";?>>November</option>
<option value="DEC"<? if ($d['mon'] == "12") echo " selected";?>>December</option>
</select><?
// Year
?><select name="<?=$fn?>_year">
<option value="0">-</option>
<? for ($i = 1955; $i < 2020; $i++ ) {?><option value="<?=$i?>"<? if ($d['year'] == $i) echo " selected";?>><?=$i?></option><? } ?>
</select><?
}
function decode_datedropdown($fn)
{
global $HTTP_POST_VARS;
$d = $HTTP_POST_VARS[$fn . "_day"] . "-" . $HTTP_POST_VARS[$fn . "_month"]. "-". $HTTP_POST_VARS[$fn . "_year"];
if ($d == '0-0-0')
{
return "";
}
else
{
return strtotime($d);
}
}