PX : code

US States HTML SELECT list by Rob Duarte
Download this code


<?php

// Author: http://www.rahji.com/contact.html
// Source: http://www.rahji.com/phpstates.html

$doctype 'xhtml';  // alternative is 'html' 

$states = array(
   
'AL'=>'Alabama',
   
'AK'=>'Alaska',
   
'AZ'=>'Arizona',
   
'AR'=>'Arkansas',
   
'CA'=>'California',
   
'CO'=>'Colorado',
   
'CT'=>'Connecticut',
   
'DE'=>'Delaware',
   
'DC'=>'District of Columbia',
   
'FL'=>'Florida',
   
'GA'=>'Georgia',
   
'HI'=>'Hawaii',
   
'ID'=>'Idaho',
   
'IL'=>'Illinois',
   
'IN'=>'Indiana',
   
'IA'=>'Iowa',
   
'KS'=>'Kansas',
   
'KY'=>'Kentucky',
   
'LA'=>'Louisiana',
   
'ME'=>'Maine',
   
'MD'=>'Maryland',
   
'MA'=>'Massachusetts',
   
'MI'=>'Michigan',
   
'MN'=>'Minnesota',
   
'MS'=>'Mississippi',
   
'MO'=>'Missouri',
   
'MT'=>'Montana',
   
'NE'=>'Nebraska',
   
'NV'=>'Nevada',
   
'NH'=>'New Hampshire',
   
'NJ'=>'New Jersey',
   
'NM'=>'New Mexico',
   
'NY'=>'New York',
   
'NC'=>'North Carolina',
   
'ND'=>'North Dakota',
   
'OH'=>'Ohio',
   
'OK'=>'Oklahoma',
   
'OR'=>'Oregon',
   
'PA'=>'Pennsylvania',
   
'RI'=>'Rhode Island',
   
'SC'=>'South Carolina',
   
'SD'=>'South Dakota',
   
'TN'=>'Tennessee',
   
'TX'=>'Texas',
   
'UT'=>'Utah',
   
'VT'=>'Vermont',
   
'VA'=>'Virginia',
   
'WA'=>'Washington',
   
'WV'=>'West Virginia',
   
'WI'=>'Wisconsin',
   
'WY'=>'Wyoming'
);

////
// ! outputs a select list containing US states
// The first parameter is the name of the form element.  
//    The default is 'state'.  
// The second parameter is the id of the form element 
//    (to use with the label tag, javascript, etc.)  
//    The default is 'state'.
// The third parameter is a string containing the state 
//    abbreviation that should be selected by default.
// If the last parameter is set, only abbreviations will 
//    be shown in the list; 
//    otherwise, the full names of the states will be shown.
//    In either case, the abbreviation is always the value.  
// All parameters are optional.
function printstateselect ($name='',$id='',$default='',$short='')
{
    global 
$doctype,$states;
    
$selected = ($doctype=='xhtml') ? 'selected="selected"' 'selected';
    
    
printf("<select name=\"%s\" id=\"%s\">\n",
        
$name $name "state",
        
$id $id "state"
    
);

    if (
$shortksort($states);    
    
reset($states);
    while (list(
$abbrev,$name)=each($states))
    {
        
printf("<option %s value=\"%s\">%s</option>\n",
            (
$default==$abbrev) ? $selected '',
            
$abbrev,
            (
$short) ? $abbrev $name
        
); 
    }
    print 
"</select>\n";
}

?>

Comments or questions?
PX is running PHP 5.2.17
Thanks to Miranda Productions for hosting and bandwidth.
Use of any code from PX is at your own risk.