Jump to content

How Do I Convert String Values From An Input Form Into Integers?


drayarms

Recommended Posts

Well the topic may not sound very explicit. So I'll do my best to explain it here. I have a pull down menu as part of a form, which contains the months of the year. I'm trying to store the value of this form entry using the $_POST['month'] variable into a database but first, I need to convert the month values into their corresponding integer values( that is 1 for January, 2 for February etc), in order to easily do date calculations later down the road. Any ideas about how to do this? It may be helpful to include the code for the pull down menu.

<p><tab> Date of Birth: <?php //Make the month pull down menu.
						//Array to store months. 
						$months = array (1 => 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'); 
						print '<select name= "month">';
						foreach ($months as $key => $value) {
						    print "\n<option value=\"$key\">$value</option>";
						}
						print '</select>'; ?> </tab> 


						<tab>  <?php //Make the day pull down menu
						print '<select name= "day">';
						for ($day = 1; $day <= 31; $day++) {
						    print "\n<option value=\"$day\">$day</option>";
						}
						print '</select>'; ?> </tab>

						<tab><?php //Make the year pull down menu 
						print '<select name= "year">';
						$start_year = date('Y');
						for ($y = ($start_year - 18); $y >= 1900; $y--) {
						    print "\n<option value=\"$y\">$y</option>";
						}
						print '</select>'; ?> </tab> </p>


Link to comment
Share on other sites

What they said.  Also, you can maybe simplify your code using range().  I just like foreach():

 

foreach(range(1,31) as $day) {
   print "\n<option value=\"$day\">$day</option>";
}
//
foreach(range(date('Y')-18, 1900) as $y) {
   print "\n<option value=\"$y\">$y</option>";
}

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.