Как передать переменную через drupal goto()?


Итак, у меня есть функция, имеющая http://link/to/$id в качестве ссылки назначения.

Это работает, когда я использую <a href="?q=mymodule/option/$id">Targeted</a>.

Но мне нужно изменить его, чтобы отправить форму, потому что мне нужно передать более одного $id. Поэтому я подумал, что было бы неплохо использовать drupal_goto(), а не опцию ссылки.

drupal_goto('mymodule/option/$id');
drupal_goto('mymodule/option/'.$id);
drupal_goto('mymodule/option/', $id);

Они не работают. Он всегда идет в http://link/mymodule/option без передачи переменной $id. Как мне это сделать правильно?

Author: kiamlaluno, 2015-11-17

1 answers

Предположим, что ваш URL-адрес похож на этот пример:

http://example.com/somepage?param1=val1&param2=val2

В этом случае вы можете принимать значения param1 и param2 примерно так:

$param1 = $_GET['param1'];
$param2 = $_GET['param2'];

Вы можете использовать этот параметр для drupal_goto как

drupal_goto("path_here", array("param1" => $param1, "param2" => $param2));

Для Drupal 7:

Как Ypcrumble говорит вам нужно использовать этот код:

drupal_goto("path_here", array("query" => array("param1" => $param1, "param2" => $param2)));

Для получения более подробной информации обратитесь к документации API .

 6
Author: Adrian Cid Almaguer, 2017-10-13 18:11:39