ProgramNerd23 Posted January 8, 2013 Share Posted January 8, 2013 Hi there guys, I am new to php and as my first language is C# I would appreciate any help regarding this. I have a form with a drop down with previous year month's and current year's months, however I would like the default selected value to be previous month and not current month. Here is a snippet of the code I have worked on.... <optgroup label="<?=(date("Y")-1)?>"><?=(date("Y")-1)?> <? for( $x=1; $x<13; $x++ ){ $time = mktime(0, 0, 0, $x, 1, date("Y")); ?><option value="<?=( (date("Y")-1)."-".date("m", $time))?>"><?=date("F", $time)?></option><? } ?> </optgroup> <optgroup label="<?=(date("Y"))?>"><?=(date("Y"))?> <? for( $x=1; $x<date("n")+1; $x++ ){ $time = mktime(0, 0, 0, $x, 1, date("Y")); $selected = ( date("n", $time)==(date("n")))? 'selected="selected"' : ""; ?><option value="<?=( date("Y")."-".date("m", $time)."-".date('d') )?>" <?=$selected?>><?=date("F", $time)?></option><? } ?> Any help would be appreciated Quote Link to comment https://forums.phpfreaks.com/topic/272841-monthly-drop-down/ Share on other sites More sharing options...
MarPlo Posted January 8, 2013 Share Posted January 8, 2013 Hi, Try replace this line: $selected = ( date("n", $time)==(date("n")))? 'selected="selected"' : ""; With this: $selected = ( (date("n", $time)+1)==(date("n")))? 'selected="selected"' : ""; Quote Link to comment https://forums.phpfreaks.com/topic/272841-monthly-drop-down/#findComment-1404176 Share on other sites More sharing options...
haku Posted January 8, 2013 Share Posted January 8, 2013 Close, but that's going to fail when it's January. Unfortunately I have to run for my last train, so I can't add anything now. If someone doesn't by tomorrow, I'll give it a shot. Quote Link to comment https://forums.phpfreaks.com/topic/272841-monthly-drop-down/#findComment-1404224 Share on other sites More sharing options...
Christian F. Posted January 8, 2013 Share Posted January 8, 2013 Using the DateTime class or strtotime () with the relative datetime formats is the correct way to go here. I recommend the former, as it's more future-proof than the latter. Quote Link to comment https://forums.phpfreaks.com/topic/272841-monthly-drop-down/#findComment-1404229 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.