web-dev-qa-db-ja.com

どのように含めるのですか?および=フォームのリダイレクトで?

フォームがあり、フォームから値を取得し、公開されたフィルターを使用して作成されたページビューの入力として使用します。
最初のフォームの送信ハンドラを作成しました。次に、ページビューにリダイレクトします。課題は、リダイレクトに検索キーを含めることです。キャラクターがいるのでこれを機能させる方法がわかりませんか?および=が変換されます。

この関数を作成しました。

function my_module_my_button_submit($form, &$form_state) {
  $url = 'some-path/search?keys=' . check_plain($form_state['values']['input']);
  $form_state['redirect'] = $url;
}

これから作成されるURLは「http:// site/some-path/search%3Fkeys%3Dtest」です。必要なURLは「http:// site/some-path/search?keys = test」です。

5
chipcleary

Drupal 6では、 `$ form_state ['redirect']を文字列で設定する代わりに、ツリー項目の配列で設定します。

$form_state['redirect'] = array('some-path/search', 'keys=' . check_plain($form_state['values']['input']), '');

最後の項目はアンカーとして使用される値になります。あなたのケースでは必要ないので、空の文字列を渡します。

5
kiamlaluno