编写一个自定义的drupal模块(但背景是php)


Writing a custom drupal module (but background is in php)

我想要一个选择列表,其中的选项从数据库中的列中提取名称列表。为此,我编写了一个函数来提取名称并将它们放入数组中。

我正在处理的代码,我希望在其中既有选择列表(如上所述),有人可以从选项中选择名称,然后是该记录的其余信息填充的其余字段。

其余字段是 $body = 'name: ' 中的代码。 $formname->名称 .

我的问题:对选择列表进行编码的正确方法是什么?

例如:在表单页面中,有以下内容:

$form['user_info']['Type'] = array(
'#type' = 'select',
'#options' => array(
 'type1' => t('Type 1'),
 'type2' => t('Type 2'),
),
);

但是我的页面不是表单,所以我该怎么称呼它?它只是一个用户可以选择名称并查看这些名称详细信息的地方。

啪!

看起来是正确的 - 取决于你想付出多少努力。

无论您是否打算将表单发回,如果要使用 FormAPI 构造选择/下拉列表,都需要构造表单。

(2) 或者,您可以创建为原始 html/php 并显示为块。

(3)另一种选择是创建一个新的内容>基本页面,将文本格式交换为"PHP代码",并带有HTML/php。

强烈建议您将 FAPI 用于 Drupal 生态系统中的任何和所有形式,原因多种多样,包括防止 SQL 注入、可扩展性等。

通过使用 drupal_get_form 函数,您可以在 php 的几乎任何地方包含模块定义的表单,并且您可以通过向 FAPI 项传递可能通过迭代数据库结果生成的数组来动态生成选择选项等。