How to get submitted values on $formstate['values'] instead of $formstate['input']? I was generating a simple form with below fields, but i am wandering why my field values are not storing in the $formstate['values'], but its in the $formstate['input'].. please have look into below code and correct me if i am doing something wrong.

function create_entry_form($form, &amp;$form_state){
    $form['entry']['password'] = array(
      '#type' =&gt; 'password',
      '#required' =&gt; TRUE,
      '#default_value' =&gt; '',
      '#maxlength' =&gt; 15,
    );

    $form['entry']['submit'] = array(
      '#type' =&gt; 'submit',
      '#value' =&gt; t('OK'),
      '#weight' =&gt; 100,
    );
    $form['entry']['emailid'] = array(
      '#type' =&gt; 'textfield',
      '#required' =&gt; TRUE,
      '#default_value' =&gt; '',
      '#maxlength' =&gt; 25,
    );

    $form['entry']['reqbtn'] = array(
      '#type' =&gt; 'button',
      '#value' =&gt; t('Request'),
      '#weight' =&gt; 106,
      '#executes_submit_callback' =&gt; TRUE,
      '#submit' =&gt; array('request_site_password'),
      '#limit_validation_errors' =&gt; array(),
    );

  return $form;  
}
function request_site_password($form, &amp;$form_state) {
    echo '&lt;pre&gt;';print_r($form_state);exit;
  }
If you want to get $formstate['values'] or $form_state['input'] values .You have to write like below.

    function create_entry_form($form, &amp;$form_state){
        $form['entry']['password'] = array(
          '#type' =&gt; 'password',
          '#required' =&gt; TRUE,
          '#default_value' =&gt; '',
          '#maxlength' =&gt; 15,
        );

        $form['entry']['submit'] = array(
          '#type' =&gt; 'submit',
          '#value' =&gt; t('OK'),
          '#weight' =&gt; 100,
        );
        $form['entry']['emailid'] = array(
          '#type' =&gt; 'textfield',
          '#required' =&gt; TRUE,
          '#default_value' =&gt; '',
          '#maxlength' =&gt; 25,
        );

        $form['entry']['reqbtn'] = array(
          '#type' =&gt; 'submit',
          '#value' =&gt; t('Request'),
          '#weight' =&gt; 106,
          '#submit' =&gt; array('request_site_password'),
          );



      return $form;  
    }
   function request_site_password(&amp;$form, &amp;$form_state) {
    drupal_set_message('&lt;pre&gt;' . print_r($form_state['input'], TRUE) . '&lt;/pre&gt;');
  }


You missed '&amp;$form' in this function request_site_password(&amp;$form, &amp;$form_state)