【发布时间】:2009-10-02 09:46:47
【问题描述】:
我想在 LEFT 和 RESULTS 中的内容(中心)部分建立一个搜索表单。
我知道如何创建模块 .. 但是如何分配它们的位置? 或者我应该将搜索表单作为块并将它们分配给构建/块/中的 LEFT。
搜索表单有 3 个文本框,没有一个是必需的。 "姓名","姓氏","年龄"
无论用户输入什么,我都想在模板的 CENTER 部分显示结果。
显然表单会将变量发送为$_POST
但是如果有超过 5 个结果我想在结果页面中添加分页。
那么我应该如何为<a href="?"建立链接
我想要像 /search//Smith/24 这样的 cleanURL
或search/John//15 或search/John/Smith/40
用于响应“姓名、姓氏、年龄”
然后在使用分页时
通过添加/search/john/smith/40/page/3 ?
【问题讨论】:
-
我非常想要。谁能给我 _MENU() 的示例,它支持 /results/% 的路径,因为我不知道我将发送多少个参数(基于用户输入)。所以如果它是 2 个参数,它将是 /search/john/smith 如果 1 个参数 /search/john 是否有任何通用 /N 野猫?所以无论向路径添加多少参数,这个 menu() 都会被触发
-
Drupal 会将任何附加的 URL 元素作为附加参数传递给您的
hook_menu回调函数,无论您指定了多少占位符。在你的回调中使用func_get_args()来获取它们。 -
澄清最后一条评论,如果你只注册了一个通配符('results/%'),但实际请求有两个额外的元素('request/john/smith/40'),你的回调将作为显式参数传递“john”,但也将“smith”和“40”作为隐式附加参数传递。