User Profile Not Saving Changes My edit profile page doensn't save all fields:

&lt;form method="post" action="" accept-charset="UTF-8" enctype="multipart/form-data"&gt;
    &lt;input type="hidden" name="action" value="users/saveUser"&gt;
    &lt;input type="hidden" name="redirect" value="/users/{{ user.username }}"&gt;
    &lt;input type="hidden" name="userId" value="{{ user.id }}"&gt;

    &lt;fieldset&gt;
      &lt;legend&gt;Your Photo&lt;/legend&gt;
    {# Check to see if the user has a photo  #}
    {% if currentUser.photoUrl %}

      &lt;figure&gt;&lt;img src="{{ currentUser.photoUrl(200) }}" /&gt;&lt;/figure&gt;
    {# If a photo exists, give the option to change the user photo #}
    &lt;div class="form-group"&gt;
    &lt;input type="file" name="userPhoto" value="Change Photo" class="form-control"&gt;
    &lt;/div&gt;

    {% else %}

    {# If no photo exists, give the option to upload a new one #}
    &lt;figure&gt;&lt;img src="/assets/img/user.gif" /&gt;&lt;/figure&gt;
    &lt;div class="form-group"&gt;
    &lt;input type="file" name="userPhoto" value="Upload" class="form-control"&gt;
    &lt;/div&gt;
    {% endif %}
  &lt;/fieldset&gt;


  &lt;fieldset&gt;
    &lt;legend&gt;Your Login Details&lt;/legend&gt;
    &lt;div class="form-group"&gt;
    &lt;label for="email"&gt;Email address&lt;/label&gt;
    &lt;input type="email" class="form-control" id="email" name="fields[email]" value="{{ user.email }}"&gt;
    &lt;/div&gt;
  &lt;/fieldset&gt;

  &lt;fieldset&gt;
  &lt;legend&gt;Your Personal Details&lt;/legend&gt;
  &lt;div class="form-group"&gt;
  &lt;label for="firstName"&gt;First Name&lt;/label&gt;
  &lt;input type="text" class="form-control" id="firstName" name="fields[firstName}" value="{{ user.firstName }}"&gt;
  &lt;/div&gt;

  &lt;div class="form-group"&gt;
  &lt;label for="lastName"&gt;Last Name&lt;/label&gt;
  &lt;input type="text" class="form-control" id="lastName" name="fields[lastName]" value="{{ user.lastName }}"&gt;
  &lt;/div&gt;

  &lt;div class="form-group"&gt;
  &lt;label for="phoneNumber"&gt;Contact Number&lt;/label&gt;
  &lt;input type="text" class="form-control" id="phoneNumber" name="fields[phoneNumber]" value="{{ user.phoneNumber}}"&gt;
  &lt;/div&gt;
  &lt;/fieldset&gt;

  &lt;fieldset&gt;
    {% set pets = craft.fields.getFieldbyHandle('pets') %}

  &lt;legend&gt;Your Property Details&lt;/legend&gt;
  &lt;label for="pets"&gt;{{ pets.instructions }}&lt;/label&gt;
  &lt;select class="form-control margin-bottom" id="pets" name="fields[pets]"&gt;
    {% for option in user.pets.options %}
    &lt;option {% if option.selected %}selected="selected"{% endif %}&gt;{{ option }}&lt;/option&gt;
    {% endfor %}
  &lt;/select&gt;

  {% set renting = craft.fields.getFieldbyHandle('renting') %}

  &lt;label for="renting"&gt;{{ renting.instructions }}&lt;/label&gt;
  &lt;select class="form-control margin-bottom" id="renting" name="fields[renting]"&gt;
    {% for option in user.renting.options %}
    &lt;option {% if option.selected %}selected="selected"{% endif %}&gt;{{ option }}&lt;/option&gt;
    {% endfor %}
  &lt;/select&gt;

  &lt;/fieldset&gt;


  &lt;input type="submit" class="btn btn-primary pull-right margin-top" value="Save Profile"&gt;
&lt;/form&gt;


It only saves the last two fields which means that a user can't change their email address, name or phone number. 

I've recently updated Craft to the latest build (Craft Pro 2.1.2566) and also changed user/saveProfile to user/saveUser.
firstName, lastName, and email are actual user fields (not custom), so their name= attributes shouldn’t have the fields[] namespace.

&lt;input type="email" class="form-control" id="email" name="email" value="{{ user.email }}"&gt;

&lt;input type="text" class="form-control" id="firstName" name="firstName" value="{{ user.firstName }}"&gt;

&lt;input type="text" class="form-control" id="lastName" name="lastName" value="{{ user.lastName }}"&gt;


I’m guessing that once you fix those, your phoneNumber custom field will also start saving.