通过DRUPAL中的url传递变量

时间:2011-06-08 09:59:27

标签: php drupal drupal-6

每当我尝试使用l()函数通过url传递变量时:

l(t($row['salon_name']),'admin/content/edit-salons-products-services?sid='.$row[salon_id] );

?被“%3F”取代

=替换为“%3D”

为什么会发生这种情况,我该如何解决?

2 个答案:

答案 0 :(得分:1)

将其更改为:'admin/content/edit-salons-products-services/.$row[salon_id]'

您可以使用arg(3)访问沙龙ID。

您可能还需要更改模块的菜单声明以允许此URL。

答案 1 :(得分:1)

正如Finbarr所说,将变量作为路径组件而不是查询参数传递通常会更好,但是l()仍然可以使用查询参数。

查询参数在$ options参数的基础$ path之外传递到l()。这使得以编程方式更改查询值更容易,而无需解析字符串。你想要的是这样的:

l(t($row['salon_name']),'admin/content/edit-salons-products-services', array('query' => array('side' => $row['salon_id'])));
相关问题