4

我应该编写一个简单的模块(不使用 WebForms)来制作获取数据的表单。但是我的表单元素没有显示出来。我使用drupal 6.0 doc,但我不知道出了什么问题!

这是我的源代码的链接

我收到错误消息:警告:第 29 行 /var/www/drupal/sites/all/modules/registeration/registration.module 中的registration_register_form() 缺少参数2。

但我写了正确的论点。

4

1 回答 1

1

大多数* 形式中,您不需要传递$formand 。$form_state

试试这个:

function registration_register_form(){

代替:

函数registration_register_form($form, &$form_state){

背景:drupal_get_form将任何给定的参数传递给registration_register_form()但在 中registration_all(),您不会传递任何额外的参数。(只是表单函数的回调)。

请注意,您仍然需要在提交函数中传递$form和使用 $form_state 的数据。$form_stateregistration_register_form_submit()

*大多数情况:如果您的表单是多步表单并且表单会根据$form_state变量的值发生变化,那么这是一个很好的用例,您确实需要将 $form 和 $form_state 传递给registration_register_form()

更新 检查您的代码后,我发现了许多错误。请参阅新版本: http: //pastebin.com/VNa3veFR(未列出)我已经纠正了我能注意到的大部分问题。请参阅函数名称上方的内联注释和注释块。

于 2012-10-19T17:33:27.440 回答