简体   繁体   中英

How to get multiple parameters sent via drupal hook_menu

I've got this menu hook below by which I'm sending two parameters to the function.

But in the function I am only receiving the first parameter.

Does any one know how to send and get multiple parameters using the Drupal menu system?

function drupal_menu(){
    $items = array();
    $items['drupal/%/%'] = array(
        'title' => t('Welcome to the Hello World Module'),
        'page callback' => 'drupal_page',
        'page arguments' => array(1,2),
        'access arguments' => array('access content'),
        'type' => MENU_CALLBACK,
    );
    return $items;
}


function drupal_page($arg1, $arg2) {    
    return drupal_json(array('mess1'=>$arg1,'mess2'=>$arg2));
}

You're already doing it exactly the right way, if it's not working try flushing your caches. It's possible they haven't been cleared since you added the second argument, and Drupal caches items return from hook_menu() so it doesn't have to be called on each page.

You are on the right way anyway ... If it is not working for you, then try the following

function drupal_page($arg1, $arg2) {
  $arg1_new = arg(1) ; 
  $arg2_new = arg(2) ; 
  return drupal_json(array(
    'mess1'=>$arg1_new,
    'mess2'=>$arg2_new
    )
  );
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM