web-dev-qa-db-ja.com

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);
_

それらは機能していません。 _$id_変数を渡さずに、常に http:// link/mymodule/option に移動します。これを正しく行うにはどうすればよいですか?

5
bandungeuy

あなたの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