Redirect a form just if the form is loaded in specific page(url) I've implemented a menu using hook_menu(),the page callback function checks if user is login or not, if user is logged in a form for creating a content of type 'request' is loaded if not using drupal_get_form, user login block is loaded.

Now what I'm looking for is when user signed-in, he/she returned back to this page so now he can fill the form.

I don't want all user login event redirected to this page, so now my question is :


  How to redirect a form just if the form is loaded in specific page(url)?
It can be accomplished adding 3 functions to your custom module:

The first one is to implement hook_form_alter():

function my_module_form_alter(&amp;$form, &amp;$form_state, $form_id){
  if($form_id=='user_login') { // It will be executed only on this form.
    // Check if the form is loaded in your custom path.
    if (current_path() == 'my_custom_path') {
      array_push($form['#submit'], 'my_module_login_custom_path_submit');
    }
    else {
      array_push($form['#submit'], 'my_module_login_user_submit');
    }
  }
}


The second one is to implement the redirect to your custom path:

function my_module_login_custom_path_submit(&amp;$form, &amp;$form_state){
  $form_state['redirect'] = 'my_custom_path';
}


The third one is to implement the redirect to user page:

function my_module_login_user_submit(&amp;$form, &amp;$form_state){
  $form_state['redirect'] = 'user';
}