перенаправление на MYMODULE_user_register_form_alter

Я много искал и нашел много сообщений, но все еще не могу заставить мой код работать. Я действительно больше не знаю проблемы, ее так сложно отлаживать.

поэтому у меня есть этот модуль кода send_xml.module

я использовал hook_form_FORMID_alter, это было похоже на

function send_xml_form_user_register_form_alter(&$form, &$form_state) {
    $form['#submit'][] = 'send_xml_submit_function';
}

function send_xml_submit_function($form, &$form_state){
    $email = $form_state['values']['mail'];
    $password = $form_state['values']['pass'];

    unset($_REQUEST['destination']);
    unset($form['#redirect']); 
    $form_state['redirect'] = array(
        'myurl',
         array(
            'query' => array(
                 'email' => $email,
                 'password' => $password,
             ),
         ),
    );
}

я хочу, чтобы это перенаправляло на внешнюю ссылку со значениями из регистрационной формы... но я не могу заставить ее работать... это мой третий день, который действительно причиняет мне много боли...

пожалуйста, помогите кому-нибудь, пожалуйста... это будет большая помощь. большое спасибо! :)


person Karl Michael Linantud    schedule 02.04.2014    source источник
comment
Вы используете регистрационную форму drupal для отправки данных на другой сайт? Зачем вообще использовать регистрационную форму drupal?   -  person 2pha    schedule 02.04.2014
comment
Можете ли вы опубликовать визуализированный HTML-код формы? Другие сайты ссылаются на #action вместо #submit   -  person drnugent    schedule 03.04.2014
comment
@2pha, потому что мне нужно запустить myurl, чтобы он зарегистрировался в моем javaWebApp, URL-адрес содержит адрес электронной почты и пароль. поэтому javaWebApp будет просто $_GET нужных ему данных, а затем сохранит их в базе данных.   -  person Karl Michael Linantud    schedule 03.04.2014
comment
@drnugent <input class="username form-text required" type="text" id="edit-name" name="name" value="" size="60" maxlength="60"> вот одно из полей ввода, оно слишком длинное, если я вставлю весь HTML .. что ты имеешь в виду под своим комментарием? вот кнопка отправки <input class="ctools-modal-ctools-ajax-register-style form-submit ajax-processed" type="submit" id="edit-submit" name="op" value="Create new account">   -  person Karl Michael Linantud    schedule 03.04.2014
comment
Вы упомянули, что ваш код не работает, но не дал никаких симптомов. Описав симптомы и отредактировав свой комментарий, включив в него полный HTML-код формы, вы поможете нам устранить неполадки.   -  person drnugent    schedule 03.04.2014


Ответы (1)


В вашем методе отправки укажите URL вместо массива, используя функцию url(), чтобы установить значение перенаправления. В настоящее время вы предоставляете массив в $form_state['redirect]. Попробуйте следующее:

$form_state['redirect'] = url('myurl', array(
    'query' => array (
                 'email' => $email, 
                 'password' => $password)
     )
);
person Deep    schedule 03.04.2014